概述
在Android中不能直接打开res/raw目录中的数据库文件,而需要在程序第一次启动时将该文件复制到手机内存或SD卡的某个目录中,然后再打开该数据库文件。
复制的基本方法是:
使用getResources().openRawResource方法获得res/raw目录中资源的 InputStream对象,
然后将该InputStream对象中的数据写入其他的目录中相应文件中。
在Android SDK中可以使用SQLiteDatabase.openOrCreateDatabase方法来打开任意目录中的SQLite数据库文件
基本思路总结起来就是如上所述,先判断是用户是否有SD卡,(PS:虽然绝大部分用户手机是带SD卡的,但我们也必须考虑一下没有SD卡用户的感受)如果没有SD卡,则把数据库拷贝到用户的手机的data内存中,如果有SD卡,则把数据库拷贝到SD卡中。
当然更好的建议,应该是这样子的, 不是在程序中拷贝数据库,而是在程序首次运行时,代码建立数据库(在SD卡上或用户手机内存Data区),然后再住这个数据库中填充数据。
我们之前使用xml解析的时候,对于res/raw下的xml文件也是不能直接打开,也是需要使用io流读到内存中,然后才能处理的来自:http://blog.csdn.net/a910626/article/details/45485003
最后
以上就是清爽大象为你收集整理的如何打开res/raw目录中的数据库文件?的全部内容,希望文章能够帮你解决如何打开res/raw目录中的数据库文件?所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复