2013-10-29 71 views
2

打开的FileInputStream我试图用无法从资产

new FileInputStream("file:///android_asset/file.html"); 

打开从资产文件作为FileInputStream但它总是抛出一个FileNotFoundException,甚至认为该文件那里。

我知道我可以使用getAssets()等资源打开文件(这对同一个文件有效),但不应该使用这种方法吗?

PS。我已经设置了我的应用程序以请求访问文件的权限。

回答

3

资产相对于您的应用程序位置存储,这就是为什么绝对路径不起作用。您需要使用AssetManager根据需要检索InputStream到您的资产。 getAssets()应该可以正常工作。

+1

但我确实还记得使用该URI模式访问资产。或者我错了? – MichelReap

+0

我不能评论,不知道在什么条件下你可以做到,但我会建议坚持正式支持的方式来避免错误等。 –

+0

会这样做,感谢您的帮助。 – MichelReap