我想为我的cordova项目创建一个特定的目录。我不知道该怎么做。 我提到所以可能链接,如, How to move file to app directory cordova
cordova, android app how to create subfolder 和其他一些链接。 但目前尚不清楚他们是否正在使用任何cordova插件,或者我们可以使用纯javascript。这些对我不起作用。 如果有任何插件或功能,请建议。
感谢。
答案 0 :(得分:2)
您需要使用此插件:https://www.npmjs.com/package/cordova-plugin-file
我不知道您使用的是什么版本的cordova,如果此插件已更新,但是当我使用它时,它不适用于WindowsPhone。适用于Android和iOS。
获取文件系统:
window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, downloadFile, fileSystemFail);
Donwload文件功能:
downloadFile: function(fileSystem){
// your code
}
创建目录:
var directoryEntry = fileSystem.root;
var folderName = "Folder";
directoryEntry.getDirectory(folderName, { create: true, exclusive: false }, onDirectorySuccess, onDirectoryFail);
onDirectorySuccess
和onDirectoryFail
的功能如下:
onDirectorySuccess: function(parent){
console.log(parent);
},
onDirectoryFail: function(error){
console.log("Unable to create new directory: " + error.code);
}
获取目录中的文件路径:
var filePath = directoryEntry.toURL() + "/" + folderName + "/" + fileName;
获取文件:
directoryEntry.getFile(folderName + "/" + fileName, { create: true, exclusive: false }, onFileSuccess, onFileFail);
要首先删除文件,您需要获取它:
directoryEntry.getFile(folderName + "/" + fileName, { create: true, exclusive: false }, onFileSuccessRemove, onFileFail);
然后成功功能:
function onFileSuccessRemove(entry) {
entry.remove();
}
我的应用程序是文件下载,因此这是将文件保存在目录中的代码:
var fileTransfer = new FileTransfer();
fileTransfer.download(URL, filePath, downloadComplete, downloadFail, true);
这不是你的情况,但我希望它有所帮助。