我将文件放在离子应用的data.txt
文件www
文件夹中。我只想将此文件复制到data/data
文件夹中更具体的另一个文件夹中。在复制之前,我写了一个代码来检查它是否存在?
function checkIfFileExists(path) {
alert("file path : " + path);
window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, function (fileSystem) {
fileSystem.root.getFile(path, { create: false }, fileExists, fileDoesNotExist);
}, getFSFail); //of requestFileSystem
}
function fileExists(fileEntry) {
alert("File " + fileEntry.fullPath + " exists!");
}
function fileDoesNotExist() {
alert("file does not exist");
}
function getFSFail(evt) {
console.log(evt.target.error.code);
}
checkIfFileExists(cordova.file.applicationDirectory + 'www/index.html');
此代码返回file does not exist
为什么?
这就是为什么我无法复制我的db文件。如果不是这样,任何人都可以帮助在cordova
app中使用预先填充的数据库。
答案 0 :(得分:0)
您可以使用此插件将数据库从www文件夹复制到本机SQL数据库。
https://github.com/an-rahulpandey/cordova-plugin-dbcopy
样本用法:
window.plugins.sqlDB.copy(dbname, location, success,error);
然后使用此插件访问数据库。
https://github.com/litehelpers/Cordova-sqlite-storage/blob/storage-master/README.md
样本用法。
var db = null;
document.addEventListener('deviceready', function() {
db = window.sqlitePlugin.openDatabase({name: 'demo.db', location: 'default'});
});