Database File Location for SQLite within MonoDroid
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...
精彩评论