日本語を記入すると文字化けした話。Comments人が作ったのを使って楽したかったんだけどいいのが無かったので、ひらがなをローマ字に変換するクラスを自作した。タイピングゲーム製作でどうしても必要になる問題文章を、ひらがな(数字+一部記号も可)で作るだけで全部ローマ字に変換します。日本語は母音と子音の組み合わせで出来てる。「く」ならK+U、「し」ならS+I/SH+I/C+I、「わ」ならW+A。入力方式が変わるのは、「し」や「じ」等特定の文字と、「ん」、小文字のや行、小文字の「つ」との組み合わせの時だけであとは特定の子音1種と母音5種類の組み合わせで成り立つ。大体次のような流れで変換を行います。パブリックメソッドに文章投入→「このぶんしょうはさんぷるっぽいなにかです!」1文字または2文字単位に分割して配列化。小文字は前後の文字とセットにする。→[こ,の,ぶ,ん,しょ,う,は,さ,ん,ぷ,る,っぽ,い,な,に,か,で,す]「っ」で終わる場合や記号・数字とセットになる場合はそれぞれを1文字とする。ループ文で1文字か2文字か判別。しょ:2文字1文字の場合はそのまま変換。この時、入力方式の設定がある文字についてはその方式に従う。ん:NまたはNN2文字の場合、最初に「つ」があるかどうか捜査。【小文字のつがある場合】2文字目を1文字変換のメソッドに通して子音を2つに増やす。TO【小文字のつがない場合】switch文で入力方式の設定がある文字(し+小文字や行、じ+小文字や行等)を変換。他は、1文字変換のメソッドに通して子音+小文字や行ローマ字にする。:N(i)+YA結果を返す→[ko,no,bu,nn,syo,u,ha,sa,nn,pu,ru,ppo,i,na,ni,ka,de,su,!]→[k,o,n,o,b,u,n,n,s,y,o,u,h,a,s,a,n,n,p,u,r,u,p,p,o,i,n,a,n,i,k,a,d,e,s,u,!]以下全文。長いw※全角スペースが混じってたりすることがあるかも配列からテキストにするときはjoin(“”)で。10:09ぐぐって、到着。全角数字がだめでしたが、DMonkey用に改造して、使わせてください。全角数字はthis.numberと同じ配列を全角数字で作って_baseOne()に条件追加すれば対応出来ると思います。全角→半角もするのなら、配列のキー番号を使えば簡単に。17:08さっそくのお返事ありがとうございます。使わせていただきます。^^;タイピングゲームじゃないんですよ~。郵便番号から住所を検索したりするのを応用して、地名をローマ字にして検索キーに使うつもりです。17:58あ、なるほど検索キーですか。いう使い道もあったんですねー。22:01もっと最適化してから実行すれば良かったのかと。全国の地域名称のデータの件数が、12万4000件、約14Mのテキストデータです。変換作業に、約11時間でした。なにはともあれ、感謝。10:2112万件通すのに11時間ということでしたか(笑)いやはやお疲れ様でした。DesignWall.。