HTML5中的文件处理 之 File Writer API

本文摘自 勾三股四 更早时期的 不老歌 博客。


这里是介绍HTML5文件处理的第二部分,之前已经介绍过了基础的FileAPI,接下来是如何通过JS创造文件的部分。我们称之为FileWriterAPI

需要提前解释的是,FileWriterAPI不是一个可以“独立”存在的规范,它强烈的依赖于FileAPI和即将介绍的FileSystemAPI。FileAPI是最基础的接口这毋庸置疑,而之所以先于FileSystemAPI介绍FileWriterAPI,是因为FileSystemAPI是一套更庞大的接口设计集合,FileWriterAPI相比之下相对简单,可以算作是FileSystemAPI也用得到的一部分基础,提前介绍给大家。


总览

这部分一共有三大接口:
* BlobBuilder接口:创建Blob
* FileSaver接口:提供一些列方法和事件监听方式,代表一个保存文件的过程
* FileWriter接口:是从FileSaver扩展来的,提供更丰富的输出选择

需要注意的是,FileSaverFileWriter是不能通过接口指定要保存或要写入的文件的,它们都是对象创建时就已经确定的并且不可更改。同时FileSaver更是不提供控制写入什么内容的接口,要写入的内容也是对象创建时就已经确定的并且不可更改的;而FileWriter可以通过接口控制要写入的内容。


接口描述

同样的,这3个接口其实并不复杂,也很好理解(同样的,接口中的“#Foo”表示任意Foo类型的对象):

BlobBuilder接口