目录操作Demo二
1.删除目录
window.requestFileSystem = window.requestFileSystem || window.webkitRequestFileSystem;
window.requestFileSystem(window.PERSISTENT, 5 * 1024, initFs, errorHandler);
function initFs(fs) {
//删除目录,子目录创建需要递归,获取可以直接指定'/'
//如果子目录不存在,抛出删除异常
fs.root.getDirectory('musi/genres/jazz', {}, function (dirEntry) {
dirEntry.remove(function () {
console.log('删除目录成功');
}, errorHandler);
},errorHandler) //以递归的方式,删除目录以及子目录
//这种删除,如果目录中有文件也直接删除
fs.root.getDirectory('mymove/', {}, function (dirEntry) {
dirEntry.removeRecursively(function () {
console.log('删除目录成功:' + dirEntry.name);
}, errorHandler);
}, errorHandler)
}
function errorHandler(err) {
console.error(err);
}
2.复制、移动、重命名文件夹
window.requestFileSystem = window.requestFileSystem || window.webkitRequestFileSystem;
window.requestFileSystem(window.PERSISTENT, 1024 * 1024 * 5, initFs, errorHandler);
function initFs(fs) {
//复制移动操作,如果没有提供新名字,系统默认使用原名
//复制目录,如果目录已经存在复制失败
fs.root.getDirectory('MyPictures', { create: true }, function (dirEntry) {
dirEntry.copyTo(fs.root, 'txt_2', function (dirEntiry) {
console.log('复制成功:' + dirEntiry.fullPath);
}, errorHandler);
}, errorHandler);
//移动目录
fs.root.getDirectory('txt_1', { create: false }, function (dirEntry) {
fs.root.getDirectory('MyPictures', { create: false }, function (dirEntry2) {
dirEntry.moveTo(dirEntry2, 'txt_1_move', function (dirEntry) {
console.log('移动目录成功:' + dirEntry.fullPath);
}, errorHandler);
}, errorHandler)
}, errorHandler)
//重命名,如果移动的目录相同,名字不同,当做重命名处理
fs.root.getDirectory('txt_2', {}, function (fileEntry) {
fileEntry.moveTo(fs.root, 'txt_2_rename');
console.log('重命名成功');
}, errorHandler)
}
function errorHandler(err) {
console.error(err);
}
更多:
HTML5 本地文件操作之FileSystemAPI实例(三)