私を助けることができたら本当に感謝します。 私の問題は次のとおりです。 私のアプリケーションは2つのテーブルを持つデータベースを作成します。私はこのデータベースをバックアップしてsdにコピーしようとしています。これはエミュレータでは問題なく動作しますが、実際のデバイスではファイルはコピーされますが、SQLiteブラウザでは開くことはできません。Android。 SDカードにコピーされたデータベースを開くことができません
コピーのコードは、これは、ファイルが実際に
おかげ ジムにコピーされることを意味し、データベースのサイズを示す表
public DBSqlLiteHelper(Context context)
{
super(context, DATABASE_NAME, null, 1);
}
@Override
public void onCreate(SQLiteDatabase db)
{
db.execSQL(TABLE_WORKERS_CREATE);
db.execSQL(TABLE_PERSONS_CREATE);
}
@Override
public void onUpgrade(SQLiteDatabase arg0, int arg1, int arg2) {
// TODO Auto-generated method stub
arg0.execSQL("DROP TABLE IF EXISTS " + TABLE_PERSONS);
arg0.execSQL("DsROP TABLE IF EXISTS " + TABLE_WORKERS);
onCreate(arg0);
}
Toast.makeText(getApplicationContext(), Long.toString(src.size())
を作成するために、ここで
try {
File sd = Environment.getExternalStorageDirectory();
File data = Environment.getDataDirectory();
if (sd.canWrite()) {
String currentDBPath = getDatabasePath("fieldworker").getAbsolutePath();
Toast.makeText(getApplicationContext(), currentDBPath, 2).show();
String backupDBPath = "fieldworker";
File currentDB = new File(currentDBPath);
File backupDB = new File(sd, backupDBPath);
if (currentDB.exists()) {
FileChannel src = new FileInputStream(currentDB).getChannel();
Toast.makeText(getApplicationContext(), Long.toString(src.size()), 2).show();
FileChannel dst = new FileOutputStream(backupDB).getChannel();
dst.transferFrom(src, 0, src.size());
src.close();
dst.close();
}
else
{
Toast.makeText(getApplicationContext(), "Doesnt exist", 2).show();
}
}
} catch (Exception e) {
}
コードです
「ファイルはコピーされますが、どのSQLiteブラウザでも開くことはできません」という意味はどうですか?どのようにプラットフォーム/ OS上の任意のブラウザでsqliteファイルを開いたのですか? – k3b
DDMSを使ってSDカードからファイルを取得できます。私はSQLiteデータベースブラウザv2.0を使用してそれを開こうとしたが、それは何も表示されません。 FirefoxのSQLiteのマネージャプラグインは言う:「たSQLiteManager:ファイルfieldworkerDevを開くでエラーが発生しました - のいずれかのファイル暗号化、または破損している 例外名:NS_ERROR_FILE_CORRUPTED 例外メッセージ:0x8052000b(NS_ERROR_FILE_CORRUPTED)[mozIStorageService.openUnsharedDatabase]:コンポーネントは、障害コード返された」Macを使用し – user1346743
イムOS XのSnow Leopard – user1346743