Javascript 如果找到,DirectoryEntry的getFile方法是否可以删除现有文件?
我目前正在创建文本文件,代码如下所示。这将创建一个文件,但不会删除现有文件Javascript 如果找到,DirectoryEntry的getFile方法是否可以删除现有文件?,javascript,android,cordova,Javascript,Android,Cordova,我目前正在创建文本文件,代码如下所示。这将创建一个文件,但不会删除现有文件 fs.root.getFile('log.txt', {create: true, exclusive: false}, function(fileentry) { fileentry.createWriter(function (filewriter) { filewriter.write('Hello world!'); }); } ); 有没有办法在没有太多额
fs.root.getFile('log.txt', {create: true, exclusive: false},
function(fileentry) {
fileentry.createWriter(function (filewriter) {
filewriter.write('Hello world!');
});
}
);
有没有办法在没有太多额外代码或专用删除代码的情况下干净地删除现有文件?
我一直在使用这个指南,但是没有找到一个有效的方法
这应该像你的作者一样工作:
fs.root.getFile('log.txt', {create: false}, function(fileEntry) {
fileEntry.remove(function() {
console.log('File deleted.');
}, errorHandler);
}, errorHandler);
这是我能接近的。它检查文件,如果文件在那里就删除。如果无法删除错误,它还会捕获错误。如果在所有这些结束时,新文件有空间,它将像以前一样创建
fs.root.getFile('log.txt', {create: false},
function(fileentry) {
fileentry.remove(createfile, errorhandler);
},
createfile
);
function createfile(){
//either the file was never there or has been removed successfully
fs.root.getFile('log.txt', {create: true, exclusive: false},
function(fileentry) {
fileentry.createWriter(function (filewriter) {
filewriter.write('Hello world!');
});
}
);
}
function errorhandler(error){
//file already exists and couldn't be removed
}
它不像我希望的那样紧凑、漂亮,但它是目前我能想到的最好的了。我希望不需要单独的代码块来执行删除操作。理想情况下,我只想使用getFile方法一次。我也有一个想法,我必须将文件创建嵌套在这段代码的success函数中,不是吗?否则,文件创建代码可能会在该代码运行之前开始运行!