【发布时间】:2012-03-04 13:30:40
【问题描述】:
我正在创建一个 PhoneGap (android) 项目。在此,我通过读取文本文件来填充数据库表。 (假设我的包名称是 com.santu.jdictionary)。但是,当我尝试将此 0000000000000001.db 以及 Databases.db 文件复制到 /data/data/com.santu.jdictionary/app_database/file__0/ 文件夹时,出现错误。
void copy(String file, String folder) throws IOException
{
File CheckDirectory;
CheckDirectory = new File(folder);
if (!CheckDirectory.exists())
{
CheckDirectory.mkdir();
}
InputStream in = getApplicationContext().getAssets().open(file);
OutputStream out = new FileOutputStream(folder+file);
// Transfer bytes from in to out
byte[] buf = new byte[1024];
int len; while ((len = in.read(buf)) > 0) out.write(buf, 0, len);
in.close(); out.close();
}
其次,我已经能够通过phoneGap插件成功地将这个文件复制到上述文件夹中,但是在复制之后PhoneGap也无法使用这个文件。 每当我尝试使用此代码打开数据库时,都会初始化一个新的 .db 文件(即 0000000000000002.db)
db = window.openDatabase("database", "1.0", "JDictionary", 10000000);
db.transaction(populateDB,errorCB, successCB);
那么我在哪里犯错了。
提前致谢。
老天爷
【问题讨论】:
-
愚蠢的问题 - 但为什么不简单地以“正常”方式打开数据库,然后读取文本文件并初始化数据库?
-
嗨,阿呆先生,我是说雷蒙德先生。
-
嗯....认真的吗?我试图提供帮助。以这样的态度,我看不出你能得到多少帮助。
-
@RaymondCamden 他可能认为你在说他的问题很愚蠢,而不是你是那个问愚蠢问题的人
-
啊,好吧,如果是这样,Santu,我绝对不是在说你笨。 ;)
标签: android database cordova populate