与this question类似,我正在尝试将HTML文件加载到webview中。此HTML文件不是在编译时创建的,而是在运行时创建的。我加载一个网页,并将其缓存到存储空间供以后使用,以防用户没有连接互联网并希望在页面上查看信息。
以下是我编写html的方法:
FileOutputStream fos = openFileOutput("info.html", Context.MODE_PRIVATE);
URL url = new URL(surl);
InputStream is = url.openStream();
ByteArrayOutputStream byteBuffer = new ByteArrayOutputStream();
int bufferSize = 1024;
byte[] buffer = new byte[bufferSize];
int len = 0;
while ( (len = is.read(buffer)) != -1 )
{
byteBuffer.write(buffer, 0, len );
}
String outputString = new String(byteBuffer.toByteArray());
fos.write(outputString.getBytes());
fos.close();
我能够以类似的方式打开和阅读HTML,但出于某种原因,尝试将html作为字符串加载到webview中不起作用。我认为webview更容易将其作为文件打开(因为它无论如何都保存为文件)。我不确定现在加载此文件的正确方法。这是我尝试过的一些方法:
view.loadUrl("file:///info.html");
view.loadUrl("info.html");
view.loadUrl("/info.html");
答案 0 :(得分:4)
试
文件:///data/data/info.html
可能只是一个数据,但我认为本地文件存储在应用的数据部分。