开发者

Database File Location for SQLite within MonoDroid

开发者 https://www.devze.com 2023-03-12 21:00 出处:网络
When using the following code to copy a SQLite database from an Assets folder , the output is being put in the following folder:

When using the following code to copy a SQLite database from an Assets folder , the output is being put in the following folder: "/data/data/AndroidTestDb.AndroidTestDb/files/AndroidTestDup.db"

Here is the code:

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);

And the desired folder +filename is :

"/data/data/AndroidTestDb.AndroidTestDb/databases/AndroidTestDup.db"

Thanks in Advance.


Use Context.GetDatabasePath to obtain the filesystem path for your database file:

// Assuming a Context subclass, e.g. an Activity
string dbPath = GetDatabasePath("AndroidTestDup.db").AbsolutePath;


There is no direct way, the closest I can think of is:

// someContext may be the current activity
String outFileName = someContext.getFilesDir().getParent().getAbsolutePath() + "/databases/AndroidTestDup.db";


My idea to find out the sqlite database in monodroid is,

  • -First Install any android File Explorer application in your emulator.

  • -Then using the application just select any location you want to store your database.

  • -Then Use "adb push " command in adb. to copy your source
    database to a mobile location that
    you have selected.

  • -So now you know path of the database.

  • -Just use that path in your program.

Thank you...

0

精彩评论

暂无评论...
验证码 换一张
取 消