home

TextEncoder

fileのinput要素からsjisのファイルを添付した場合こんな感じ
const file = e.target.files[0]
const arrayBuffer = await file.arrayBuffer()
const binary = new Uint8Array(arrayBuffer)
const decoder = new TextDecoder("sjis",  { fatal: true })
const s = decoder.decode(binary) // binaryはUint8Array
        

fatalにtrueをしていても必ず例外が起きるわけではなく、utf16のファイルを添付すると普通に読み込めてしまうので、そこまで信用して使えるものではなさそう

使用可能なエンコーディングはこちら