在数据库文件中(在资产中)我需要读取一些日期而不在设备上复制此数据库。 我没有在谷歌找到正确的工作答案。
有可能吗?
答案 0 :(得分:3)
SQLite需要一个本地文件,而不仅仅是InputStream
才能工作。
或者:
Use SQLiteAssetHelper
并将数据复制到本地文件或
不要使用SQLite作为存储格式,而是使用其他具有InputStream
友好解析器的东西(例如,JSON,使用Gson)
答案 1 :(得分:1)
不,你不能这样做,因为所有资产都是以二进制形式编译的,android保存了所有资产文件的名称,它可以在运行时访问该文件...! Project Resources,请参阅链接上的main/assets
Android SQLiteDatabaseHelper需要某种InputStream ......!
答案 2 :(得分:0)
我正在考虑使用输入流,因为我们可以将它指向资产,但事实证明db调用的最低级别是本机接受os文件。因此,复制到本地应该是唯一的选择,即使它是只读的