Cordova 科尔多瓦删除文件

Cordova 科尔多瓦删除文件,cordova,Cordova,我有一个可以创建文件的工作应用程序。 我正在寻找一种方法,在工作数小时后从cordova应用程序中删除文件。我似乎无法让它工作 以下是创建和删除文件的代码: 函数crea(){ 警报(cordova.file.externalDataDirectory); resolveLocalFileSystemURL(cordova.file.externalDataDirectory,函数(dir){ 警报(“获取主目录”,目录); dir.getFile(“log1.txt”,{create:true

我有一个可以创建文件的工作应用程序。 我正在寻找一种方法,在工作数小时后从cordova应用程序中删除文件。我似乎无法让它工作

以下是创建和删除文件的代码:

函数crea(){
警报(cordova.file.externalDataDirectory);
resolveLocalFileSystemURL(cordova.file.externalDataDirectory,函数(dir){
警报(“获取主目录”,目录);
dir.getFile(“log1.txt”,{create:true},函数(文件){
警报(“获取文件”,文件);
});
});
}
函数del(){
var relativeFilePath=cordova.file.dataDirectory;
var filename=“log1.txt”;
警报(相对路径);
requestFileSystem(LocalFileSystem.PERSISTENT,0,函数(fileSystem){
//警报(fileSystem.root.fullPath);
getFile(relativeFilePath+filename,{create:false},函数(fileEntry){
fileEntry.remove(函数(文件){
警报(“文件已删除!”);
},函数(){
警报(“删除文件时出错”+错误代码);
});
},函数(){
警报(“文件不存在”);
});
},函数(evt){
警报(evt.target.error.code);
});
}
致以最诚挚的问候。

我发现它能正常工作:

function del() {

    window.resolveLocalFileSystemURL(cordova.file.externalDataDirectory, function (dir) {

        dir.getFile("log1.txt", {create: false}, function (fileEntry) {
            fileEntry.remove(function (file) {
                alert("file removed!");
            }, function (error) {
                alert("error occurred: " + error.code);
            }, function () {
                alert("file does not exist");
            });
        });
    });

}

谢谢

它还可以使用
requestFileSystem
而不是
resolveLocalFileSystemURL

window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, function(fs) {
    fs.root.getFile('test.txt', {
        create: false,
        exclusive: false
    }, function(fileEntry) {
        fileEntry.remove(function (file) {
            // File deleted successfully
        }, function (err) {
            console.log(err); // Error while removing File
        });

    }, function(err) {
        console.log(err)  // Error while requesting File.
    });
}, function(err) {
    console.log(err)  // Error while requesting FS
});

}

您的错误处理程序需要将“错误”传递给它才能工作。
removeFile(path) {
return new Promise((resolve, reject) => {
  const filePath = path.substr(0, path.lastIndexOf('/'));

  window.resolveLocalFileSystemURL(filePath, (dir) => {
    const fileName = path.substr(path.lastIndexOf('/') + 1);
    dir.getFile(fileName, { create: false }, (fileEntry) => {
      fileEntry.remove(() => {
        resolve('file removed!');
      }, (error) => reject('error occurred: ' + error.code),
        () => reject('file does not exist'));
    }, (error) => reject(error));
  }, (error) => reject(error));
});