HTML5 本地文件操作之FileSystemAPI整理(二)
一、文件目录操作
1.DirectoryEntry对象
属性:
1.isFile: 操作对象的是否为文件,DirectoryEntry对象固定其值为false
2.isDirectory: 操作对象是否为目录,DirectoryEntry对象固定其值为true
3.name: 目录操作对象的名称,不包括路径
4.fullPath: 目录操作对象的完整路径,文件系统的绝对路径
5.fileSystem: 文件操作对象所属的文件系统对象,参考FileSystem
方法:
1. entry.getMetadata( successCB, errorCB, recursive ); 获取文件夹信息
succesCB: ( MetadataSuccessCallback ) 必选 获取文件或目录属性信息成功的回调。
errorCB: ( FileErrorCallback) 必选 获取文件或目录属性信息失败的回调。
recursive: ( Boolean ) 必选 是否递归计算目录信息,true为递归计算获取信息,false不递归计算获取,默认值为false。(测试时,参数没起作用)
2.entry.moveTo( parent, newName, succesCB, errorCB ); 移动目录
3.entry.copyTo( parent, newName, succesCB, errorCB ); 拷贝目录
说明:以下情况拷贝目录将会导致失败: 将父目录拷贝到子目录中; 要拷贝到的目标目录无效; 要拷贝到的目标路径被文件占用; 要拷贝到的目标目录已经存在并且不为空。 拷贝目录成功通过succesCB回调返回,失败则通过errorCB返回。
4. DOMString entry.toURL(); 获取目录路径转换为URL地址,示例:filesystem:http://localhost:57128/persistent/txt_2_rename
5. entry.remove( succesCB, errorCB );删除目录
说明:以下情况删除目录将会导致失败: 目录中存在文件; 删除根目录; 删除目录成功通过succesCB回调返回,失败则通过errorCB返回。
6. entry.getParent( succesCB, errorCB );获取父目录
succesCB: ( EntrySuccessCallback ) 可选 获取父目录成功的回调函数,回调函数接收参数为上一级目录引用DirectoryEntry对象
errorCB: ( FileErrorCallback) 可选 获取父目录失败的回调函数
示例如下:获取到的是根目录。
7. DirectoryReader entry.createReader();
说明:创建一个目录读取对象,用户读取目下的文件及子目录。
8. entry.getDirectory( path, flag, succesCB, errorCB ); 创建或打开子目录
- path: ( DOMString ) 必选 要操作目录相对于当前目录的地址
- flag: ( Flags ) 可选 要操作文件或目录的参数
- succesCB: ( EntrySuccessCallback ) 可选 创建或打开目录成功的回调函数
- errorCB: ( FileErrorCallback) 可选 创建或打开目录失败的回调函数
9.entry.getFile( path, flag, succesCB, errorCB );创建或打开文件
10.entry.removeRecursively( succesCB, errorCB );递归删除目录
说明:删除目录将会删除其下的所有文件及子目录 不能删除根目录,如果操作删除根目录将会删除目录下的文件及子目录,不会删除根目录自身。 删除目录成功通过succesCB回调返回,失败则通过errorCB返回。
2.DirectoryReader对象
方法:
1. directoryReader.readEntries( succesCB, errorCB );
说明:获取当前目录下的所有文件和子目录。 获取操作成功通过succesCB回调返回,失败则通过errorCB返回。
参数:
succesCB: ( EntrySuccessCallback ) 可选 获取成功的回调函数,回调函数中返回FileEntry或者DirectoryEntry的数组
errorCB: ( FileErrorCallback) 可选 获取失败的回调函数
使用示例:
fs.root.getDirectory('txt_2_rename', { create: false }, function (dirEntry) {var dirReader = dirEntry.createReader();console.info(dirReader);dirReader.readEntries(function (entries) {console.info(entries);}, errorHandler); }, errorHandler);
3.File对象
说明:文件系统中的文件数据对象,用于获取文件的数据
属性:
size: 文件数据对象的数据大小,单位为字节
type: 文件数据对象MIME类型
name: 文件数据对象的名称,不包括路径
lastModifiedDate: 文件对象的最后修改时间
方法:
1. file.slice( start, end );获取文件指定的数据内容
说明:获取文件指定的数据内容,其中end必须大于start。
参数:
start: ( Number ) 可选 获取文件数据的起始位置
end: ( Number ) 可选 获取文件数据的结束位置
2. file.close(); 关闭文件数据对象
说明:当文件数据对象不再使用时,可通过此方法关闭,释放系统资源。
二、参数整理
Flags
JSON对象,获取文件操作的参数
属性:
create: (Boolean 类型 )是否创建对象标记,指示如果文件或目录不存在时是否进行创建,默认值为false。
exclusive: (Boolean 类型 )反向操作标记,其本身没有任何效果,需与create属性值设置为true时一起使用,如果目标文件或目录已经存在则会导致文件或目录打开失败,默认值为false。
三、URL相关
URLType
文件路径类型
说明:在文件系统中的文件路径需转换成URL格式,已方便runtime快速加载。
RelativeURL
相对路径URL
说明:只能在扩展API中使用,相对于基座提供的特定目录,以“_”开头。
常量:
"_www": (DOMString 类型 )应用资源目录
保存应用的所有html、css、js等资源文件,与文件系统中根目录PRIVATE_WWW一致,后面加相对路径如“_www/res/icon.png”。 注意:应用资源目录是只读目录,只能读取次目录下的文件,不能修改或新建。
"_doc": (DOMString 类型 )应用私有文档目录
用于保存应用运行期业务逻辑数据,与文件系统中根目录PRIVATE_DOCUMENTS,如“_doc/userdata.xml”。
"_documents": (DOMString 类型 )程序公用文档目录
用于保存程序中各应用间可共享文件的目录,与文件系统中根目录PUBLIC_DOCUMENTS,如“_document/share.doc”。
"_downloads": (DOMString 类型 )程序公用下载目录
用于保存程序下载文件的目录,与文件系统中根目录PUBLIC_DOWNLOADS,如“_download/mydoc.doc”。
LocalURL
本地路径URL
说明:可在html页面中直接访问本地资源,以“file:///”开头,后面跟随系统的绝对路径。 如示例:“file:///D:/res/hello.html”。沙盒系统还有以‘filesystem:http://’开头
RemoteURL
网络路径URL
说明:可在html页面中以网络资源模式访问本地资源,以“http://”开头,后面跟随相对路径。 如示例:“http://localhost:13131/_www/res/icon.png”,其中“_www”字段可支持类型与相对路径URL一致。
更多:
HTML5 本地文件操作之FileSystemAPI整理(一)
HTML5 本地文件操作之FileSystemAPI简介
转载于:https://www.cnblogs.com/tianma3798/p/6439668.html
HTML5 本地文件操作之FileSystemAPI整理(二)相关推荐
- HTML5 本地文件操作之FileSystemAPI整理(一)
一.请求配额 DeprecatedStorageInfo对象 window.webkitStorageInfo:当使用持久存储模式时需要用到该对象的接口 方法: 1.requestQuota(type ...
- Java本地文件操作
概述:Java本地文件操作,涉及到文件/文件夹的创建,文件/文件夹属性的读取与设置,文件/文件夹的重命名,目录结构的遍历,以及文件内容的读取与写入. File属于java.io.File. ---在E ...
- iOS客户端开启FTP,其他设备访问手机本地文件操作实现
iOS客户端开启FTP,其他设备访问手机本地文件操作实现 因为项目需要,需要在手机端搭建FTP服务,让其他设备来访问手机某个路径文件夹下边的文件,实现下载功能. 主要实现借助第三方库XMFTPServ ...
- php复制xml文件,PHP_php xml文件操作实现代码(二),复制代码 代码如下:?php //创 - phpStudy...
php xml文件操作实现代码(二) 复制代码 代码如下: //创建一个新的DOM文档 $dom = new DomDocument(); //在根节点创建departs标签 $departs = $ ...
- java的本地文件操作
一.文件的创建.删除和重命名 File file = new File("/bin/hello.txt");//文件无法被创建,系统找不到指定的路径 file.createNewF ...
- [JS进阶] HTML5 之文件操作(file)
前言 在 HTML 文档中 <input type="file"> 标签每出现一次,一个 FileUpload 对象就会被创建. 该元素包含一个文本输入字段,用来输入文 ...
- 绝对路径与相对路径的区别【2】--release和debug这两种情况下对本地文件操作不一致的问题...
总感觉题目起的有点别扭,但是不明白这是不是应该归因于这两种编译模式的区别,所以只能用这个长而晦涩的题目了. 我们在做一些应用程序时,经常会用XML文件存放一些程序的配置信息,甚或一些少量数据信息,而且 ...
- 06-Java 本地文件操作
1.File类简介 创建好:File file=new File("hello.txt"); 后,按住Ctrl键.单击File.会出现File的源代码. 在视图左下角双击" ...
- html5 本地文件操作系统,读取目录 - createReader《 HTML5:文件系统 》
调用目录的 createReader 方法,它会返回一个 DirectoryReader 对象,然后调用这个 DirectoryReader 对象的 readEntries 方法,可以得到目录所包含的 ...
最新文章
- 图解虚拟机中CentOS安装使用和编程
- pythonの鉴黄之路(四)——urllib模块批量下载
- 深度学习多模态融合_多模态深度学习:用深度学习的方式融合各种信息
- CSS Friendly 中的DetailsView的问题
- 单链表删除指定节点c语言,在单链表删除指定节点之后的节点
- php 数组去impload,你真的了解 load 方法么?
- gtp传输java_一种GTP数据包传输方法、相关装置及存储介质与流程
- 全基因组水平分泌蛋白鉴定
- 磁芯电流探头降额功率的主要原因是什么?
- JavaScript几种继承方式
- 北漂8年的程序员,终于在疫情之下决定撤退老家了
- Python系列17-数据可视化之下载数据
- laravel Eloquent whereIn 多个字段
- 小程序开发之 wx.getUserInfo获取用户信息方案介绍
- Hibernate5
- yahoo.cn邮箱foxmail收发攻略
- 开源WEBGIS(五)WEBGIS五剑客之GIS服务
- codeforces Intel Code Challenge Final Round (div.1 + div.2 combined)
- ctf.show web2 最简单的SQL注入
- 基于Flink的电影数据实时统计平台(一):项目展示
热门文章
- linux环境下nacos的安装+启动,阿里云服务器安装nacos
- 使用JPA进行Update操作 @Query注解的用法,JPL
- 2022-2028年中国无溶剂聚氨酯复膜胶行业市场调查研究及发展前景规划报告
- 最好用的修改docker镜像源的方式
- 如何使用vs来运行box2d中Testbed的案例
- 经历能让人变得更理智更成熟
- https://blog.csdn.net/blmoistawinde/article/details/84329103
- 关于TVM的点滴记录
- Nucleus 实时操作系统中断(下)
- 2021年大数据Hive(十二):Hive综合案例!!!