问题描述
- 在webview中打开一个本地的html文件
-
在一个根文件夹中保存了一个文件,我想在webview中打开它。
这是我保存文件的代码:OutputStream outstream = null; outstream = openFileOutput(fileName ,MODE_WORLD_READABLE); if (outstream != null) { OutputStreamWriter outputreader = new OutputStreamWriter(outstream); BufferedWriter buffwriter = new BufferedWriter(outputreader); buffwriter.write(result); } outstream.close(); } catch (java.io.FileNotFoundException e) { System.out.println("File not found in the writing..."); } catch (IOException e) { System.out.println("In the writing..."); }
然后又回调文件:
fileView.getSettings().setJavaScriptEnabled(true); fileView.loadUrl("file:///" + name); <---
然后程序中我就获得错误提示说不能找到这个文件。
是代码方面出现问题了吗?
解决方案
事实上,当你打开一个URL时,要使用file:///...
也就是说你应该在assets目录(test.html)下保存文件。现在假设你需要访问test.html文件,你应该这样写:loadURL("file:///android_asset/test.html');
解决方案二:
试一下这个方法:
WebView mWebView=(WebView)findViewById(R.id.mWebView);
mWebView.loadUrl("file:///book.html");
mWebView.getSettings().setJavaScriptEnabled(true);
mWebView.getSettings().setSaveFormData(true);
mWebView.getSettings().setBuiltInZoomControls(true);
mWebView.setWebViewClient(new MyWebViewClient());
private class MyWebViewClient extends WebViewClient
{
@Override
//在webview中显示web页面,但不是在web浏览器
public boolean shouldOverrideUrlLoading(WebView view, String url) {
view.loadUrl (url);
return true;
}
}
时间: 2024-12-11 00:09:50