iPhoneとテキストファイル | TERUのブログ

TERUのブログ

つれづれに

iPhoneで長い文章を読みたいと思ったんですよ。で、メールにその文章(テキストファイル)を添付して、iPhoneで受信すりゃいいだろうと思ってやってみたら……

文字バケー!

バケバケのバケラッタはオバケのQ太郎。

むー。なぜじゃ? 

こーいうときは、先人の知恵をお借りするのがよろしいわけで、さっそくAppleのサイトに行って、「サポートコミュニティー」というのをのぞいてみたんです。で、ぼくの探し方が悪いのもあるだろうけど、ここでは解決せず。

Appleを見てるだけじゃダメだ。ちゅーことで、ほかのサイトも探してみたらわかりました、解決策。というか、文字バケの原因が。

iPhoneは、受信したテキストファイルを、強制的に「UTF-8」で開くらしいんですよ。ぼくが送った文章は、「Shift_JIS」だから、それりゃバケますわね。

あ、ちょこっとだけ説明しておくと、「UTF-8」とか「Shift_JIS」って、文字コードのことです。パソコン(に限らずコンピューター全般)は、1と0しかわかんない、2進法ちゃんですから、文字を扱うときに、「コード」が必要なんですよ。コンピューターに理解させるには、なんでもかんでも、1と0の組み合わせてしてやらなきゃいけないわけです。

たとえば、「あ」という文字は、Shift_JISの場合、「10000010 10100000」となってます。文字コードというのは、人間とコンピュータのあいだの「翻訳機能」なんですね。

さて、問題なのは、その翻訳のための辞書とも言える「文字コード」には、いくつか種類があることなんです。

そのひとつが、「Shift_JIS」であり、また「UTF-8」なのです。

「Shift_JIS」は、日本で日本の設計者によって作られた文字コードです。

「UTF-8」は、言語ごとに文字コードを作ると、なんかグチャグチャになっちゃうから、一貫したコード体系に統一しましょうと多くのコンピューターメーカーや、ソフトウエアメーカーなどが参加して作った「国際標準規格」です。

しかし、歴史的経緯から(歴史的な紆余曲折が非常に複雑で、ぼくも理解してるわけじゃないけど)、現在でも、日本で日本語を扱うときに、もっともよく使われるのが「Shift_JIS」です。この文字コードでテキスト書いときゃ、まず間違いありません。

が!

Appleさんってば、そんなこと知ってらっしゃるくせに、、iPhoneでは、「UTF-8」だけしか受け付けないようなんですよ。あ、もしかしたら、アプリとか使えばいいのかもしれないけど、少なくともiOSとしては、そーいう仕様のようです。

さっき、Shift_JISの「あ」は、「10000010 10100000」と書きましたけど、これがUTF-8になると、同じ「あ」が、「11100011 10000001 10000010」なんですよ。

つまり、Shift_JISで書かれたテキストは、もー、まったく「翻訳」できずに、文字バケバケのバケラッタなのです。

という原因がわかれば、この問題を解決するには、もとのテキストを、UTF-8で(変換)し直して、それを送ればよかろうと思いつくわけですな。
$TERUのブログ

このように、Shift_JISで書かれたテキストファイルを……

$TERUのブログ

UTF-8の、バイト順マーク (BOM) 付きにしてから、保存し直します。

さあ、これで文字バケは直るでしょうか?

当たり~。文字バケは無事解決!

と、ぼくは、喜んで終わりでいいけど……

でもねえ……

ふつうは、そんなことユーザーにさせないでしょ。というか、そんなこと意識させちゃダメですよねー。文字コードがいくつかあるなら、そんなの自動で判別して、勝手に変換してくんなきゃ。それが技術的に無理だというのならしょうがないけど、PCやMacintoshのソフトではやってるんだから、iPhone(iOS)だってできるはず。

Appleさん、お願いしますよ。ホントに。