正如问题的标题所说,我有一个在 Android 内部存储上生成 HTML 文件的应用程序。
我是这样做的:
读取文件
if (thereIsSomethingToShow)
{
File dir = getDir("MyApp", MODE_WORLD_READABLE);
File newfile = new File(dir.getAbsolutePath() + File.separator + Ref+"-"+Name+".html");
mWebview.loadUrl("file:/"+dir.getAbsolutePath()+File.separator+Ref+"-"+Name+".html"); //("file:///"+Environment.getExternalStorageDirectory()/*+"//MyApp//MySheets//"*/+"//"+Ref+"-"+Name+".html");
setContentView(mWebview);
}
编写文件(在我的班级上面的代码之前)
File root = getDir("MyApp", MODE_WORLD_READABLE); //Environment.getExternalStorageDirectory();
File f = new File(root.getAbsolutePath() + File.separator + Ref+"-"+Name+".html"); //new File(root, Ref+"-"+Name+".html");
f.createNewFile();
FileOutputStream fos = new FileOutputStream(f);
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(fos, "ISO-8859-1"));
bw.write(rs.getFullCode());
bw.close();
HTML 文件在指定位置生成良好,但我无法在我的应用程序的 webView 和浏览器中读取它,除非我使用根资源管理器将 HTML 文件移动到外部存储。
如果我不这样做,我的浏览器和我的 webView 都会显示“网页不可用”。请注意,如果我在评论中使用这些值,一切都会好起来的。
谢谢你的帮助。