Javascript Cordova是否检索和删除超过30天的文件?

Javascript Cordova是否检索和删除超过30天的文件?,javascript,cordova,phonegap-plugins,fileapi,Javascript,Cordova,Phonegap Plugins,Fileapi,使用cordova和apache/cordova插件文件插件,如何获取给定目录中超过30天的文件并将其删除?尝试以下代码: function daysDiff(now, fileDate) { // thanks to http://stackoverflow.com/a/3224854/3340702 var timeDiff = Math.abs(now.getTime() - fileDate.getTime()); return Math.ceil(timeDif

使用cordova和apache/cordova插件文件插件,如何获取给定目录中超过30天的文件并将其删除?

尝试以下代码:

function daysDiff(now, fileDate) {
    // thanks to http://stackoverflow.com/a/3224854/3340702
    var timeDiff = Math.abs(now.getTime() - fileDate.getTime());
    return Math.ceil(timeDiff / (1000 * 3600 * 24));
}

// Process file entries
function deleteOlderFiles(entries) {
    var i;
    var currentDate = new Date();
    for (i=0; i<entries.length; i++) {
        if(entries[i].isFile) {
            entries[i].file(function(file) {
                if(daysDiff(currentDate, file.lastModifiedDate) > 30) {
                    entries[i].remove(function(){
                        console.log("File removed");
                    }, function(){
                        console.log("Error while removing file");
                    });
                }
            }), error); 
        }
    }
}

function fail(error) {
    alert("Failed during operations: " + error.code);
}

// Get a directory reader
var directoryEntry = new DirectoryEntry(name, path);
var directoryReader = directoryEntry.createReader();

// Get a list of all the entries in the directory
directoryReader.readEntries(deleteOlderFiles, fail);
有关详细信息,请参阅和文档

尝试使用以下代码:

function daysDiff(now, fileDate) {
    // thanks to http://stackoverflow.com/a/3224854/3340702
    var timeDiff = Math.abs(now.getTime() - fileDate.getTime());
    return Math.ceil(timeDiff / (1000 * 3600 * 24));
}

// Process file entries
function deleteOlderFiles(entries) {
    var i;
    var currentDate = new Date();
    for (i=0; i<entries.length; i++) {
        if(entries[i].isFile) {
            entries[i].file(function(file) {
                if(daysDiff(currentDate, file.lastModifiedDate) > 30) {
                    entries[i].remove(function(){
                        console.log("File removed");
                    }, function(){
                        console.log("Error while removing file");
                    });
                }
            }), error); 
        }
    }
}

function fail(error) {
    alert("Failed during operations: " + error.code);
}

// Get a directory reader
var directoryEntry = new DirectoryEntry(name, path);
var directoryReader = directoryEntry.createReader();

// Get a list of all the entries in the directory
directoryReader.readEntries(deleteOlderFiles, fail);

有关详细信息,请参阅和文档

看这里:你要找的是lastModifiedDate。看这里:你要找的是lastModifiedDate。更彻底地看了之后,我意识到这并不完全正确。fileEntry上的file方法是一个异步方法,但这非常接近。我向remove方法添加了回调,以便您可以跟踪成功/错误状态。条目[I]。文件是异步的。我应该为var directoryEntry=new DirectoryEntryname,path;名称和路径,以清除文件夹的根目录?无论我做什么尝试,我总是会遇到缺少命令的错误。在更彻底地研究之后,我意识到这并不完全正确。fileEntry上的file方法是一个异步方法,但这非常接近。我向remove方法添加了回调,以便您可以跟踪成功/错误状态。条目[I]。文件是异步的。我应该为var directoryEntry=new DirectoryEntryname,path;名称和路径,以清除文件夹的根目录?不管我怎么做,我总是会遇到缺少命令的错误