natsuの秘密基地です
カレンダー
11 | 2024/12 | 01 |
S | M | T | W | T | F | S |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
カテゴリー
プロフィール
HN:
natsu
性別:
男性
趣味:
酒など
自己紹介:
ここに書かれていることはフィクションです。
×
[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。
NSStringを使ってエンコード指定なしの、
引数の一番少ないstringWithContentsOfFileを呼び出して
EUCをロードすると、
ロードが出来たのでよかった。
と思いきやデバッガに意味不明な文字列が。
あー。ぐちゃぐちゃ。
ここは、Shift JISを読み込もうと思ったところなので、
エンコードを指定してやる。
Shift JISに指定してやると、
EUCでちゃんと失敗するようになった。
stringWithContentsOfFile:usedEncoding:error
はISO-2022-JP、いわゆるJISが読み込めてしまう。
あー。ぐちゃぐちゃ。
usedEncodingで返された値は4。
これはUTF-8だと。
俺が言うから確かなんだと。
そうっすか・・・
stringWithContentsOfFile:usedEncoding:error
は、UTFだと解ってるとき以外使っちゃ駄目ってこと?
でまあ、結局単純な当たって砕けろ式でコーディング。
エンコード指定して読み込む。
だめだったら別のエンコード指定して読み込む。
だめだったら別のエンコード指定して読み込む。
おおぅ。UTF-8はUTF-16指定でも読めるねぇ。
EUCもUTF-16指定で読める。
で、UTF-16はISO-2022-JP指定で読めちゃう。
ISO-2022-JPはShift JIS指定で読める。
あー。もう、全部ぐちゃぐちゃ。
できんことはするな。
といいたい。
で、まとめると。
Shift JIS
Shift Jis、ISO-2022-JP、UTF-16指定で読めてしまう
EUC
EUC、ISO-2022-JP、UTF-16指定で読めてしまう
ISO-2022-JP
なんでもこい
UTF-8
UTF-8、ISO-2022-JP、UTF-16指定で読めてしまう
UTF-16
UTF-16、ISO-2022-JP指定で読めてしまう
とりわけISO-2022-JPの優秀さが光る。
順番で何とかなるかと思いきや、
こいつのせいで何ともならない。
日本語文字コード大杉。
使い始めちゃったら、使い続けざるをえんのよねぇ。
Shift JISなんかあるせいで、
どれだけのPHPプログラマが血祭りにあげられたことか。
EUCでいいじゃんとかおもうけど。
経緯がいろいろあるんでしょ。
半角カタカナとか。
あーなんかね。当たって砕けた感じ。
基本的に
「当たって砕けろだっ!」
って思ってやるとき、ってね。
大体くだけるもんなんですよ。
恋愛だってそうでしょ。
砕ける、っていうか砕け散る。というか。
さて。文字コード。どうしようかねぇ。
PR
この記事にコメントする