0

当使用以下代码从 Assets 文件夹中复制 SQLite 数据库时,输出将被放在以下文件夹中: “/data/data/AndroidTestDb.AndroidTestDb/files/AndroidTestDup.db”

这是代码:

Stream myInput = Assets.Open(@"AndroidTest.db");

string outFileName=System.IO.Path.Combine(System.Environment.GetFolderPath 
(System.Environment.SpecialFolder.Personal), "AndroidTestDup.db");

Stream myOutput = new FileStream(outFileName, FileMode.OpenOrCreate);

所需的文件夹+文件名是:

“/data/data/AndroidTestDb.AndroidTestDb/databases/AndroidTestDup.db”

提前致谢。

4

3 回答 3

6

使用Context.GetDatabasePath获取数据库文件的文件系统路径:

// Assuming a Context subclass, e.g. an Activity
string dbPath = GetDatabasePath("AndroidTestDup.db").AbsolutePath;
于 2011-06-21T02:39:20.140 回答
3

没有直接的方法,我能想到的最接近的是:

// someContext may be the current activity
String outFileName = someContext.getFilesDir().getParent().getAbsolutePath() + "/databases/AndroidTestDup.db";
于 2011-06-12T03:54:11.023 回答
0

我在 monodroid 中找出 sqlite 数据库的想法是,

  • -首先在您的模拟器中安装任何 android File Explorer 应用程序。

  • - 然后使用该应用程序只需选择要存储数据库的任何位置。

  • - 然后在 adb 中使用“adb push”命令。将源数据库复制
    到您选择的移动位置

  • - 所以现在你知道了数据库的路径。

  • - 只需在您的程序中使用该路径。

谢谢...

于 2011-06-18T10:50:16.173 回答