Javascript 是多个blob';允许在Google Chrome';s文件系统API?

Javascript 是多个blob';允许在Google Chrome';s文件系统API?,javascript,html,api,google-chrome,filesystems,Javascript,Html,Api,Google Chrome,Filesystems,我正在Google Chrome 16中使用文件系统API,但无法编写多次blob(如果不重新打开文件进行附加)。第一次写入后,文件似乎已关闭 例如: var blob = new WebKitBlobBuilder(); blob.append('one'); fileWriter.write(blob.getBlob('text/plain')); var blob2 = new WebKitBlobBuilder(); blob2.append('two'); fileWriter.wr

我正在Google Chrome 16中使用文件系统API,但无法编写多次blob(如果不重新打开文件进行附加)。第一次写入后,文件似乎已关闭

例如:

var blob = new WebKitBlobBuilder();
blob.append('one');
fileWriter.write(blob.getBlob('text/plain'));

var blob2 = new WebKitBlobBuilder();
blob2.append('two');
fileWriter.write(blob2.getBlob('text/plain'));
给出一个未捕获错误:无效状态错误:DOM文件异常7


W3文档中提到:“此接口在FileSaver接口上进行扩展,以允许执行多个写入操作,而不仅仅是保存一个Blob。”

根据规范,在编写器忙于编写时,不允许使用编写器:

write

  • 如果
    readyState
    正在
    写入
    ,则抛出一个
    文件异常
    ,错误代码为
    无效状态\u错误
    ,并终止这一系列步骤
  • 由于编写器是异步的,因此必须使用回调等待:

    // write first blob
    
    fileWriter.onwriteend = function() {
      // write second blob
    };
    

    谢谢,这是我的错。在事件发生之前,我正试图写作。