目录操作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实例(三)