【问题标题】:Opening a read only database directly in the assets folder直接在 assets 文件夹中打开只读数据库
【发布时间】:2012-01-18 17:37:42
【问题描述】:

我在这个网站上发现了很多问题,询问如何打开位于 assets 文件夹中的数据库文件。正确答案的要点始终是相同的:位于资产中的数据库无法打开,因为此类文件夹(作为 APK 的全部内容)是只读的。因此,需要将数据库文件复制到其他地方才能使用(Ship an application with a database)。

但是,如果实际上不必修改数据库文件怎么办?在这种情况下,资产文件夹是只读的限制无关紧要。

那么我的问题是:

有没有办法在资产文件夹中打开一个只读数据库无需先将其复制到另一个位置

【问题讨论】:

  • 有解决办法吗?

标签: android


【解决方案1】:

使用 OPEN_READONLY 标志,例如

SQLiteDatabase.openDatabase(myPath,null,OPEN_READONLY);

您可以找到更多标志here

而且我认为您必须先将数据库复制到其他地方才能打开它。

【讨论】:

    【解决方案2】:

    您需要将其复制到数据文件夹,然后从那里读取。

    【讨论】:

    • 所以即使我不受此文件夹只读限制的影响(假设数据库不需要修改),也无法从资产文件夹中读取数据库?
    猜你喜欢
    • 1970-01-01
    • 2021-10-17
    • 2012-04-07
    • 2023-03-24
    • 2018-02-15
    • 2013-04-27
    • 1970-01-01
    • 1970-01-01
    • 2011-12-18
    相关资源
    最近更新 更多