[TOC]
根目录
名称
-
-
指向 DOMFileSystem
-
绝对路径
-
是否是 folder
-
是否是 file
-
文件名
-
-
-
写
fileEntry.createWriter(function(fileWriter) { fileWriter.onwriteend = function(e) { // success todo... } fileWriter.onerror = function(e) { // fail todo... } fileWriter.write(new Blob(['...'], { type: 'text/plain;charset=UTF-8', endings: 'native' /* 'transparet' */ } )); }, errorHandler);
-
读
fileEntry.file(function(file: File) { const reader = new FileReader(); reader.onloadend = function (e) { // success todo... } reader.onerror = function (e) { // fail todo... } reader.readAsText(file); }, errorHandler);
-
复制
root.getFile(filename, {}, function(fileEntry: FileEntry) {// get fileEntry root.getDirectory(dest, {}, function(dirEntry: DirectoryEntry) {// get dest dirEntry fileEntry.copyTo(dirEntry, newName, onsuccess, onerror)); }); });
-
moveTo: (dest: DirectoryEntry, newName?: String, successCallback?: (newEntry: FileEntry) => void, errorCallback?: (err) => void) => void
剪切
function rename(cwd: DirectoryEntry, src: String, newName: String) { cwd.getFile(src, {}, function(fileEntry) { fileEntry.moveTo(cwd, newName); }, errorHandler); }
-
读文件夹
const reader = root.createReader(); reader.readEntries(function(results: Array<Entry>) { if (!results.length) { // is empty folder } else { const fileEntryList = results.filter( function(entry) { return entry.isFile; } ); const directoryEntryList = results.filter( function(entry) { return entry.isDirectory; } ); } });
-
getFile & getDirectory: (pathname: String, opts:{create?: Boolean, exclusive?: Boolean}, successCallback?: (fileEntry: FileEntry) => void, errorCallback?) => void (DirectoryEntry Only)
创建、获取文件
fs.root.getFile(src, {}, function(fileEntry: FileEntry) { fs.root.getDirectory(dirName, {}, function(dirEntry: DirectoryEntry) { fileEntry.moveTo(dirEntry); }, errorHandler); }, errorHandler);
-
const img = new Image(fileEntry.toURL()); document.body.append(img);
-
删
fileEntry.remove(function() { // removed successfully... }, function(err) { // failed... });
-
获取文件信息(最后变更时间、大小)
fs.root.getFile('folderA/folderB/file.jpg', {}, function(fileEntry: FileEntry) { fileEntry.getMetaData(function(metadata: Metadata) { console.log(metadata); }); }, errorHandler);
-