文字化けクイズ(問題編)

みんな安易に「文字化けした!」って言うけど、いろいろ雰囲気の違う文字化けがあるじゃないの、というわけで5問ほどクイズにしてみた

  • Q1(初級): 「こんにちは、世界」と表示されるはずなのになぜか「縺薙」などの難しい漢字が表示された。何が起きたか。
  • Q2(初級): 「こんにちは、世界」と表示されるはずなのになぜか「ã」(aの上に~)などが表示された。何が起きたか。
  • Q3(中級): ブラウザであるリンクをクリックしたところ「臼NG」で始まる謎の文字列が表示された。何が起きたか。
  • Q4(上級): 「こんにちは」と表示されるはずなのになぜか「S?kao」と表示された。何が起きたか。
  • Q5(上級): 「ファイルが見つかりません」と表示されるはずなのになぜか斜め四角に囲まれた疑問符などが表示された。何が起きたか。なお参考までに表示された文字列は20文字であり、表示されたウェブページのエンコーディングはutf8だった。(追記:6文字目までがが?t?@?Cになっている、という情報も付け加えるとエンコーディングまで含めて特定できるか。そこまで求める問題のつもりじゃないけど。)


初級〜中級は非プログラマでもブラウザでインターネットを眺めているだけで遭遇するし、初級は解決できる人も多いだろう、というレベル設定。上級は非プログラマだと遭遇したことがないかもなぁ、でも両方とも僕が遭遇した実話だよ、というレベル。一応確認のために再現するコードを作ってみたんで、解けない問題ではないはず。


昔はãだらけになることよりも半角カナだらけになることの方が多かったように思うけど最近あんまり見ない気がする。時代の変化なのかなー。


追記:僕は携帯向けWeb開発の経験はないので絵文字がらみの文字化けは問題に入っていません。入っていても面白かったかもね。あと難易度が高すぎると不評な上級問題ですが、「cp932 is not SJIS!」系の問題がQ3とQ4の間くらいなのかな。技術系サイトとかですでに語り尽くされていると思って書かなかった。それ系の問題を上級、Q4とQ5を超上級にするとよかったんだろか。