我们可以在我的应用程序中显示来自设备存储的xls文件

我目前为Android创build了一个应用程序。
在这个应用程序,我成功地显示一个XLS文件,感谢谷歌文档查看器和传递文件的URL像这样:

WebView mWebView=new WebView(MyActivity.this); mWebView.getSettings().setJavaScriptEnabled(true); mWebView.getSettings().setPluginsEnabled(true); mWebView.loadUrl("https://docs.google.com/gview?embedded=true&url="+LinkTo); setContentView(mWebView); 

所以,现在我需要显示我保存到我的设备存储的同一个XLS文件,而不是从URL这次,直接从存储。

我发现很多build议,使其链接到URL中的文件,但没有与我的文件已经到我的设备上。

那么,在我开始之前,我想知道是否有可能?

我看到了这个方法myWebView.loadData( );

我可以用它来解决我的问题吗?
我可以使用docs.google.com/gview和内部文件吗?

编辑

我尝试Der Gol … lum的解决scheme

这是我的代码:

 WebView wv = (WebView)findViewById(R.id.fileWebView); wv.getSettings().setJavaScriptEnabled(true); String root = Environment.getExternalStorageDirectory().toString(); String my_path = root + "/excel_files/"; wv.loadUrl("file://" + my_path + excelFile.getName()); wv.setWebViewClient(new WebViewClient() { public boolean shouldOverrideUrlLoading(WebView view, String url) { view.loadUrl(url); return false; } }); 

但是webview显示一个空白页面

假设你的文件是静态的不可变的 ,你可以把这个文件放到你的assets文件夹中,然后使用

 mWebView.loadUrl("file:///android_asset/your_file"); 

加载到您的WebView。
我使用这种技术来显示帮助(HTML文件)。

您也可以使用assets下的子文件夹(在我的情况下,我使用的URL如"file:///android_asset/help/help_" + language + ".htm" ),
因为我的文件在assets/help/