1

我需要使用 HTML5 附加文件FileWriterSync,来自服务器的多个数据块。我试图追加,但它只是写一个文件块。让我们检查一下我的代码。

var creator;
try {
    fileEntry = fs.root.getFile(filename, {
        create: creator
    });

    var byteArray = new Uint8Array(data.length);
    for (var i = 0; i < data.length; i++) {
        byteArray[i] = data.charCodeAt(i) & 0xff;
    }

    var BlobBuilderObj = new WebKitBlobBuilder();
    BlobBuilderObj.append(byteArray.buffer);

    if (!creator) fileEntry.createWriter().seek();
    fileEntry.createWriter().write(BlobBuilderObj.getBlob())

} catch (e) {
    errorHandler(e);
}

fs之前已经初始化,creator附加文件的更改,我需要附加文件。

我的问题是如何调用寻求从 EOF 开始写作。

4

1 回答 1

0

seek()为偏移量取一个整数值。您需要将其设置为文件的长度才能进行追加:

var fw = fileEntry.createWriter();
fw.seek(fw.length);

它应该类似于异步案例: http ://www.html5rocks.com/en/tutorials/file/filesystem/#toc-file-appending

于 2012-07-30T21:03:56.647 回答