JSFiddle - React, Tailwind, and code Playground
HTML
<input id="$input" type="file">
JavaScript
async function main() {
var file = $input.files[0]
const size = file.size
console.log('file size:', file.size)
var reader = file.stream().getReader();
var chunk = await reader.read()
var chunks = [chunk.value]
prompt('now truncate', `perl -e 'truncate $ARGV[0], ((-s $ARGV[0]) - 1)' ${file.name}`)
while (!chunk.done) {
chunk = await reader.read()
chunk.value && chunks.push(chunk.value)
}
prompt('file size should be ' + size + ' it was:', new Blob(chunks).size)
}
$input.onchange = main