一、请求配额

DeprecatedStorageInfo对象

window.webkitStorageInfo:当使用持久存储模式时需要用到该对象的接口

方法:

1.requestQuota(type,size,successCB,errorCB);请求配额

2.queryUsageAndQuota();获取配额信息

window.requestFileSystem(window.PERSISTENT, gratedBytes, initFs, errorHandler);

DOMFileSystem对象

文件系统对象,用于管理特定本地文件目录

说明:文件系统对象表示一个应用可访问的根目录。name属性用于标识此根目录的名称,与LocalFileSystem中的文件系统类型一一对应。root属性为文件目录对象,用于实际操作文件系统,参考DirectoryEntry。

属性:

1.name:当前沙盒系统名称,协议、域名、端口+操作类型

2.root:当前沙盒系统的根目录对象DirectoryEntry

二、文件操作

1.FileEntry

属性:

1.name:文件名称,包括扩展名

2.fullPath:相对沙盒根目录的全名称

3.isFile:是否是文件,FileEntry对象固定为true

4.isDirectory:是否是文件夹,FileEntry对象固定为false

5.filesystem:当前fs(FileSystem对象)的引用

方法:

fileEntry.getMetadata(successCallback, opt_errorCallback);
fileEntry.remove(successCallback, opt_errorCallback);
fileEntry.moveTo(dirEntry, opt_newName, opt_successCallback, opt_errorCallback);
fileEntry.copyTo(dirEntry, opt_newName, opt_successCallback, opt_errorCallback);
fileEntry.getParent(successCallback, opt_errorCallback);
fileEntry.toURL(opt_mimeType); fileEntry.file(successCallback, opt_errorCallback);
fileEntry.createWriter(successCallback, opt_errorCallback);

1.entry.getMetadata( successCB, errorCB ),获取文件信息

MetadataSuccessCallback

获取文件或目录状态信息成功的回调函数,获取文件信息成功返回Metadata对象,详细参考见下面。

void onSuccess( metadata ) {
// Metadata code.
}

2.  entry.moveTo( parent, newName, succesCB, errorCB ); 移动文件

说明:以下情况移动目录将会导致失败: 要移动到的目标目录无效; 要移动到的目标路径被其它文件占用; 移动文件成功通过succesCB回调返回,失败则通过errorCB返回。

参数:

parent: ( DirectoryEntry ) 必选 要移动到的目标目录

newName: ( DOMString ) 可选 移动后的文件名称,默认为原始文件名称

succesCB: ( EntrySuccessCallback ) 可选 移动文件成功的回调函数

回调函数中的参数保存新的文件对象。

errorCB: ( FileErrorCallback ) 可选 移动文件失败的回调函数

3.  entry.copyTo( parent, newName, succesCB, errorCB );  拷贝文件

4.  DOMString entry.toURL(); 获取文件路径转换为URL地址,返回‘filesytem:http://’格式

5. DOMString entry.toLocalURL();: 获取文件路径转换为本地路径URL地址,测试时没有该方法

6. DOMString entry.toRemoteURL();获取文件路径转换为网络路径URL地址,测试时没有该方法。

7.entry.remove( succesCB, errorCB ); 删除文件

8.  entry.getParent( succesCB, errorCB ); 获取文件所属的父目录

9.   entry.createWriter( succesCB, errorCB );  获取文件关联的写文件操作对象FileWriter,在FileWriterSuccessCallback 参数中返回

10.  entry.file( succesCB, errorCB );获取文件数据对象,在FileSuccessCallback 参数总获取

11.

2.FileWriter对象

属性:

1.readyState:当前文件读取写入状态,常量值如下:

  • INIT: 值为0,写文件初始化状态
  • WRITING: 值为1,正在写入文件状态
  • DONE: 值为2,写文件操作完成状态

2.position:当前操作指针位置

3.length:当前写入文件的长度,字节数

4.error:异常

方法:

1.seek(number):将写入流,指针移动到指定位置,说明:定位文件的操作位置,有效值为0到文件的总长度减1。 0表示文件的起始位置。

2.abort():终止写入,说明:写入文件数据操作开始后,可通过此方法取消写入文件数据操作。调用此方法后将触发文件写入对象的onabort事件。

3.truncate(number):按照指定长度截断文件。

4.write(data):从文件当前定位的位置开始,写入数据到文件中。 如果文件中已经存在数据,新写入的数据将覆盖已有数据

data:File对象,Blob对象,DOMString类型。

5.

事件:

  • onwritestart: 写入文件开始时的回调函数
  • onprogress: 写入文件过程中的回调函数
  • onwrite: 写入文件成功完成的回调函数
  • onabort: 取消写入文件时的回调函数
  • onerror: 文件写入操作失败时调用的回调函数
  • onwriteend: 文件写入操作完成时的回调函数

3.FileReader对象,参考:http://www.cnblogs.com/tianma3798/p/5836484.html

三、参数对象

Metadata

JSON对象,保存文件或目录的状态信息对象

说明:可通过DirectoryEntry或FileEntry对象的getMetaData方法获取

属性:

modificationTime: (Date 类型 )文件或目录的最后修改时间

size: (Number 类型 )文件的大小,若获取的是目录对象的属性则值为0。

directoryCount: (Number 类型 )包含的子目录数,若自身是文件则其值为0。测试时不可用

fileCount: (Number 类型 )目录的文件数,若自身是文件则其值为0。测试时不可用

更多:

HTML5 本地文件操作之FileSystemAPI简介

HTML5 本地文件操作之FileSystemAPI整理(一)的更多相关文章

  1. HTML5 本地文件操作之FileSystemAPI整理(二)

    一.文件目录操作 1.DirectoryEntry对象 属性: 1.isFile: 操作对象的是否为文件,DirectoryEntry对象固定其值为false 2.isDirectory: 操作对象是 ...

  2. HTML5 本地文件操作之FileSystemAPI实例(三)

    文件夹操作demo 1.读取根目录文件夹内容 window.requestFileSystem = window.requestFileSystem || window.webkitRequestFi ...

  3. HTML5 本地文件操作之FileSystemAPI实例(二)

    文件操作实例整理二 1.删除文件.复制文件.移动文件 //获取请求权限 window.requestFileSystem = window.requestFileSystem || window.we ...

  4. HTML5 本地文件操作之FileSystemAPI实例(一)

    文件操作实例整理一 1.请求系统配额类型 console.info(window.TEMPORARY); //0 临时 console.info(window.PERSISTENT); //1 持久 ...

  5. HTML5 本地文件操作之FileSystemAPI实例(四)

    目录操作Demo二 1.删除目录 window.requestFileSystem = window.requestFileSystem || window.webkitRequestFileSyst ...

  6. HTML5 本地文件操作之FileSystemAPI简介

    一.FileSystemAPI简介 HTML5的文件操作Api中 1.FileAPI,用于基础的客户端本地文件读取,目前大多数接口已经被主流浏览器支持,点击查看更多参考 2.FileSystemAPI ...

  7. 【Egret】实现web页面操作PC端本地文件操作

    Egret 实现web页面操作PC端本地文件操作: http://edn.egret.com/cn/book/page/pid/181 //------------------------------ ...

  8. H5读取本地文件操作

    H5读取本地文件操作 本文转自:转:http://hushicai.com/2014/03/29/html5-du-qu-ben-di-wen-jian.html感谢大神分享. 常见的语言比如php. ...

  9. Linux文件操作常用命令整理

    收集.整理日常系统管理或维护当中的,常用到的一些关于文件操作的命令或需求,后续会慢慢补充.完善! 查看.生成指定目录的目录树结构?   [root@DB-Server ~]#tree   #当前目录 ...

随机推荐

  1. php 会话控制(禁用cookie后session为什么会失效?)

    首先说明一点:session不一定必须依赖cookie,只是php默认客户端sessionid基于cookie方式保存. 到此,我想你也应该了解了php默认的session客户端保存方式是基于cook ...

  2. django 不能访问静态资源的解决办法

    最近在中文win10下使用python的django搭建web测试服务器,发现一个诡异的现象,正常配置好django的模型,视图和模板, 1.setting.py内容如下: ""& ...

  3. 洛谷P2261 [CQOI2007] 余数求和 [数论分块]

    题目传送门 余数求和 题目背景 数学题,无背景 题目描述 给出正整数n和k,计算G(n, k)=k mod 1 + k mod 2 + k mod 3 + … + k mod n的值,其中k mod ...

  4. Java中public、protected、default和private的区别

    public: 具有最大的访问权限,可以访问任何一个在classpath下的类.接口.异常等.它往往用于对外的情况,也就是对象或类对外的一种接口的形式. protected: 主要的作用就是用来保护子 ...

  5. docker 网络的几种模式

    docker 网络分为单机和多机,我们来了解一下docker的单机网络 docker单机网络分为以下几种: 1)bridge NetWork,使用--net=bridge指定,默认设置.2)Host ...

  6. 网络与多线程---OC中多线程使用方法(一)

    小编在此之前,通过一个小例子,简单的形容了一下进程与线程之间的关系,现在网络编程中的多线程说一下!!! *进程的基本概念 每一个进程都是一个应用程序,都有自己独立的内存空间,一般来说一个应用程序存在一 ...

  7. UOJ.26.[IOI2014]Game(交互 思路)

    题目链接 \(Description\) 有一张\(n\)个点的图.M每次询问\((u,v)\),你需要回答图中\((u,v)\)间是否有边.如果M可以用\(<n(n-1)/2\)次询问确定图中 ...

  8. BZOJ3501 : PA2008 Cliquers Strike Back

    \[\begin{eqnarray*}ans&=&m^{\sum_{i=1}^n Stirling2(n,i)\bmod 999999598}\bmod 999999599\\& ...

  9. hdu 5752 Sqrt Bo 水题

    Sqrt Bo 题目连接: http://acm.hdu.edu.cn/showproblem.php?pid=5752 Description Let's define the function f ...

  10. GIT(7)----强制用远程代码覆盖本地修改

    清除本地修改 git reset --hard 拉代码 git pull Git Pull While Ignoring Local Changes? git pull 并强制覆盖本地修改