ファイルから読み取ったUnicodeのバイナリ配列を文字列へ変換する[JavaScript]
ファイルから読み取ったUnicodeのバイナリ配列を文字列へ変換する方法です。バイナリはJavascriptのUint8Array型で8ビット符号なし整数値の配列となります。
バイナリを文字列へ変換
Unicode(ユニコード)のバイナリは基本的にJavascriptでファイルを読み込む場合に使用すると思います。今後、そのようなWebアプリケーションが増えていくと思います。
関数を作りましたのでご参考にしてください。引数のPByteArrayにバイナリ配列を渡して戻り値が文字列となります。
function PByteArrayToUnicode(PByteArray) { var B; var i = 0; var len = PByteArray.length; var PWordArray = new Array(); if ((len % 2) != 0) { //throw 'It's broken'; // できるだけ読み込むようにする len--; } while (true) { B = PByteArray[i]; i++; PWordArray[PWordArray.length] = B << 8 | PByteArray[i]; if (i == len) break; i++; if (i == len) break; } return String.fromCharCode.apply(null, PWordArray); }
Unicodeの先頭の「0xFE」「0xFF」が必要なければ関数に渡す引数を「Uint8Array.slice(2)」にして先頭2バイトを削除して下さい。
また、Asciiで文字列を読み込む場合は次のコードで可能です。
String.fromCharCode.apply(null, PByeArray)
なお、日本語のSJIS、EUC、JISなどの文字コードの変換はJavascriptでは標準関数がありませんので自分で作る必要があります。
スポンサーリンク
関連記事
公開日:2015年12月27日
記事NO:01662
この記事を書いた人
![]() | 💻 ITスキル・経験 サーバー構築からWebアプリケーション開発。IoTをはじめとする電子工作、ロボット、人工知能やスマホ/OSアプリまで分野問わず経験。 画像処理/音声処理/アニメーション、3Dゲーム、会計ソフト、PDF作成/編集、逆アセンブラ、EXE/DLLファイルの書き換えなどのアプリを公開。詳しくは自己紹介へ |
プチモンテ代表、アーティスト名:プチモンテ | |
🎵 音楽制作 BGMは楽器(音源)さえあれば、何でも制作可能。歌モノは主にロック、バラード、ポップスを制作。歌詞は叙情詩、叙情的な楽曲が多い。楽曲制作は2023年12月中旬 ~ |
オリジナル曲を始めました✨
YouTubeで各楽曲を公開しています🌈
https://www.youtube.com/@petitmonte