admin管理员组文章数量:1130349
近日,需要完成一个程序,需要把相关文件放到Android程序中,并共Android读取。
Android读写文件很简单,如果用JAVA语言的话,就是JAVA文件读写。
真正的问题在于,在Android程序中,应该把文件放到哪里,才能保证能可以读取。
继续查找相关资料,得出如下结论:
1)Android中有raw和assets两个文件夹下的文件,可以不编译为二进制文件,把相关文件放到这两个文件即可。
2)raw文件目录为res/raw,相关文件会被映射到R.java,访问时直接通过资源ID访问;
3)assets对应文件不会映射到R.java,而是和apk绑定。这意味着相关文件没有绝对路径,必须通过AssetManager工具类进行访问。
放置assets文件方法如下:
1)assets问价下加Folder,然后加Assets Folder。
2)把文件放入assets文件下。
读取assets文件,必须用AssetManager,方法如下:
context.getAssets().open(FILE_NAME)
其中,getAssets为获得AssetManager,同时,必须在一定Android的context下。
同时,必须注意的是context建议不要用getApplicationContext(),否则由于上下文环境不一致造成的奇奇怪怪的错误。
近日,需要完成一个程序,需要把相关文件放到Android程序中,并共Android读取。
Android读写文件很简单,如果用JAVA语言的话,就是JAVA文件读写。
真正的问题在于,在Android程序中,应该把文件放到哪里,才能保证能可以读取。
继续查找相关资料,得出如下结论:
1)Android中有raw和assets两个文件夹下的文件,可以不编译为二进制文件,把相关文件放到这两个文件即可。
2)raw文件目录为res/raw,相关文件会被映射到R.java,访问时直接通过资源ID访问;
3)assets对应文件不会映射到R.java,而是和apk绑定。这意味着相关文件没有绝对路径,必须通过AssetManager工具类进行访问。
放置assets文件方法如下:
1)assets问价下加Folder,然后加Assets Folder。
2)把文件放入assets文件下。
读取assets文件,必须用AssetManager,方法如下:
context.getAssets().open(FILE_NAME)
其中,getAssets为获得AssetManager,同时,必须在一定Android的context下。
同时,必须注意的是context建议不要用getApplicationContext(),否则由于上下文环境不一致造成的奇奇怪怪的错误。
版权声明:本文标题:Android读取程序中文件 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://it.en369.cn/jiaocheng/1758293834a2777725.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。


发表评论