【发布时间】:2012-01-31 17:37:16
【问题描述】:
请看下面的函数:
private void copyDataBase() throws IOException{
//Open your local db as the input stream
InputStream myInput = myContext.getAssets().open(DB_NAME);
// Path to the just created empty db
String outFileName = DB_PATH + DB_NAME;
File f = new File(DB_PATH);
if (!f.exists()) {
f.mkdir();
}
//Open the empty db as the output stream
OutputStream myOutput = new FileOutputStream(outFileName);
//transfer bytes from the inputfile to the outputfile
byte[] buffer = new byte[1024];
int length;
//myInput.read(buffer);
while ((length = myInput.read(buffer))>0){
myOutput.write(buffer, 0, length);
}
//Close the streams
myOutput.flush();
myOutput.close();
myInput.close();
}
其中 DB_PATH 是“/data/data/应用程序包/databases/”。是否可以设置 DB_PATH="" ?实际上设置 DB_PATH = "/data/data/应用程序包/databases/"。在大多数设备上都可以正常工作,但在 HTC 渴望 HD 上不起作用(讨论过 here、here、here 和 here)。此设备在设备上找不到提到的路径。 谢谢
【问题讨论】: