看论坛中有很多人在问这个问题,于是就写了一个读取和清除指定目录中文件缓存的方法,分享出来,希望能帮助到需要的人。
//以下是读取指定目录下子目录以及文件的大小的方法
function showCache() {
plus.io.resolveLocalFileSystemURL('_doc/', function(entry) { //通过URL参数获取目录对象或文件对象
var fileSize = 0;
var directoryReader = entry.createReader();
directoryReader.readEntries(function(entries) { //获取当前目录中的所有文件和子目录
for(var i = 0; i < entries.length; i++) {
if(entries[i].isFile) {
entries[i].file(function(file) {
fileSize += (file.size * 0.0009766);
}, function(e) {
mui.toast(e.message);
});
} else {
entries[i].getMetadata(function(metadata) {
fileSize += (metadata.size * 0.0009766); //1字节=0.0009766kb
}, function() {
mui.toast(e.message);
});
}
}
}, function(e) {
mui.toast('文件读取失败');
});
setTimeout(function() {
$('#size').text(Math.ceil(fileSize) + 'kb');
}, 500);
}, function(e) {
mui.toast('文件路径读取失败');
});
}
//以下是清除缓存在指定目录中文件的方法
function clearCache() {
plus.io.resolveLocalFileSystemURL('_doc/', function(entry) {
entry.removeRecursively(function(entry) { //递归删除其下的所有文件及子目录
mui.toast("缓存清理完成");
}, function(e) {
mui.toast(e.message);
});
setTimeout(function() {
showCache();
}, 500);
}, function(e) {
mui.toast('文件路径读取失败');
});
}
好了,完成了,android和ios下都测试过,没有问题。
4 个评论
要回复文章请先登录或注册
1***@qq.com
过时的流行
绝地求生 (作者)
1***@qq.com