1.BlobBuilder#appendで文字列を追加すると自動的にutf8に変換される
2.FileReader#readAsTextで任意の文字コードのBlobを読み込んで文字列に変換できる
これらを使うとなんでもutf8に変換できるね!という話。ただし、任意の文字コード→任意の文字コードはやっぱり変換テーブルが必要だけど。BlobBuilder#appendで文字コード指定できないのかな?
処理の流れ。
Array or Uint8Array or ArrayBuffer -> unicode string -> utf8 ArrayBuffer