SJISのCSVファイルの読み込み
2015-08-26


アプリで使う漢字データを、Excel2010で作成し、CSVで保存。そのまま取り込むと文字化け。Cygwinを起動し、"od -t x1"で覗くと、SJIS。Unicodeにしなくては。あらかじめファイルを変換してしまう方が楽だが、ストアアプリ(UWP)での変換も習得しておいたほうがいい。

禺画像]

そのままでは、SJISは使えない。最初の2行のおまじないが要る。

CSVファイルに対してFileStreamを用意し、StreamReaderで読み込む。最初、Encoding(sjis)を指定しなくて失敗。読み込んでから壊れたデータをいくらコード変換しようとしてもだめ。

読み込んだStringをGetBytesでbyte列に変換の上、Encoding.ConvertでUTF-8にコード変換。ここから逆戻り。byte列をchar配列に変換の上、Stringに戻す。ここまで来てはじめて、Splitでカンマ区切りの文字列を分解。

変換ばかりで手間がかかるが、まあ、できる。

[Windowsストアアプリ]

コメント(全0件)
コメントをする


記事を書く
powered by ASAHIネット