Blob: textStream() method
Note: This feature is available in Web Workers.
The textStream() method of the Blob interface returns a ReadableStream that can be used to read the contents of the Blob in chunks of UTF-8.
This provides an easier mechanism for streaming the content than piping a Blob.stream() byte stream through a TextDecoderStream.
Note:
The textStream() method differs from FileReader.readAsText() in that it always uses UTF-8 encoding, whereas readAsText() has a parameter that sets the encoding.
Syntax
js
textStream()
Parameters
None.
Return value
Examples
>Reading blob content as a text stream
This example shows how to read blob content as a text stream.
We create a sample Blob, obtain a ReadableStream of its content using textStream(), then read the text via a reader created using ReadableStream.getReader().
js
const pElem = document.querySelector("p");
const obj = { hello: "world" };
const myBlob = new Blob([JSON.stringify(obj, null, 2)], {
type: "application/json",
});
async function streamBlobText(blob) {
const textStream = blob.textStream();
// instead of
// const textStream = blob.stream().pipeThrough(new TextDecoderStream());
const reader = textStream.getReader();
while (true) {
const { value, done } = await reader.read();
if (done) break;
pElem.textContent += value;
}
}
streamBlobText(myBlob);
Specifications
| Specification |
|---|
| File API> # dom-blob-textstream> |