private final static String DB_NAME = "test.db";
private final static String DATABASE_PATH = android.os.Environment
.getExternalStorageDirectory().getAbsolutePath() + "/Test";
//将数据库文件写入到SD卡
public static void setDatabaseToSdcard(Context con) {
// 判断是否存在sd卡
boolean sdExist = android.os.Environment.MEDIA_MOUNTED
.equals(android.os.Environment.getExternalStorageState());
if (!sdExist) {
Log.e("SD卡管理:", "SD卡不存在,请加载SD卡");
} else {
// 数据库所在目录
String dbPath = DATABASE_PATH + "/" + DB_NAME;
File dirFile = new File(DATABASE_PATH);
if (!dirFile.exists()) {
dirFile.mkdirs();
}
File dbFile = new File(dbPath);
if (!dbFile.exists()) {
try {
InputStream open = con.getAssets().open(DB_NAME);
FileOutputStream fileOutputStream = new FileOutputStream(
dbPath);
byte[] buffer = new byte[1024];
int count = 0;
while ((count = open.read(buffer)) > 0) {
fileOutputStream.write(buffer, 0, count);
}
fileOutputStream.flush();
fileOutputStream.close();
open.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}