本ブログの更新について
本ブログの更新は2016年3月31日をもって終了しました.ありがとうございました.
posted by みっちぃ (管理人)
2012年06月21日
困難な文字コード問題
あるシステムがUTF-8形式の文字列を出力する際,ASCII文字はそのままに,マルイバイト文字はHEX形式の文字列となる仕様になっている.例えば,サフィックス6ケタが結果コードを表す「結果E38292」という文字列の場合,このシステムの仕様で出力すると「E7B590E69E9CE38292」となる.欲しいのは元の文字列なので
「E7B590E69E9CE38292」をそのままHEX形式のバイト列だと解釈して読み込むと「結果を」となり,結果コードを表す6ケタの文字列が日本語の「を」1文字に置き換わってしまう.
この例のように「サフィックス6ケタは結果コードを表す」という仕様になっていれば復元処理は簡単だ.しかし,今困っているのは,フリー入力された文字列をシステムからエクスポートしたときに,上記のような仕様で出力されてしまうことである.どうやってオリジナルの文字例を復元したらよいだろう?
しっかし,なんでこんな仕様で出力することにしたのだろう・・・・.もともと,英語圏向けのシステムだったらしいけど・・・.誰か,よい復元法が合あればご教授ください.
この例のように「サフィックス6ケタは結果コードを表す」という仕様になっていれば復元処理は簡単だ.しかし,今困っているのは,フリー入力された文字列をシステムからエクスポートしたときに,上記のような仕様で出力されてしまうことである.どうやってオリジナルの文字例を復元したらよいだろう?
しっかし,なんでこんな仕様で出力することにしたのだろう・・・・.もともと,英語圏向けのシステムだったらしいけど・・・.誰か,よい復元法が合あればご教授ください.
この記事へのコメント
コメントを書く
この記事へのトラックバックURL
http://blog.sakura.ne.jp/tb/56627909
この記事へのトラックバック
http://blog.sakura.ne.jp/tb/56627909
この記事へのトラックバック