From: eiichi_maekawa@... Date: 2009-07-03T08:56:01+09:00 Subject: [ruby-list:46142] Re: 文字変換について 前川です。 小波さん ありがとうございました。 a='91' b='44' puts a.hex.chr + b.hex.chr #=>船 の考え方で、できそうです。 ご指摘の別件の質問については、別にして、メーリングリストに 出します。 了 "Hideo Konami" 宛先 ruby-list@ruby-lang.org (ruby 2009/07/03 08:36 mailing list) cc ruby-list@ruby-la 件名 ng.org へ [ruby-list:46141] Re: 文字変換につ 返信してください いて 小波です。 とりあえず簡単に。 >前川です。 > >文字の変換に取り組んでいますが、 >うまくできません。 > >Rubyは、まだ、3週間程度で、ほとんど、手探り状態です。 > >基本中の基本で、恥ずかしい限りですが、 >以下を、ご教示いただければ、助かります。 > >・入力された文字をバイト単位の文字に変換する >・バイト単位の文字から、元の文字列(SJIS)を求める > >54455354 <-> TEST >91448a43835683588365838047 <-> 船海システムG Windows だったら,単に次のようにするだけで文字が端末(コマン ドプロンプトとか Cygwin の Bashとか)に出力されます。 puts 0x54.chr + 0x45.chr #=> TE puts 0x91.chr + 0x44.chr #=> 船 ですから,文字列を2個ずつに切って chr をくっつけていくことに なるでしょう。 なお 'a' のアスキーコードは 'a'[0] でいいです。 このあたりはString クラスをじっくり見ていかれるとよいの ではないでしょうか。Shift-JIS 限定の世界なら変換の仕掛けは いりません。 あと,さらに他の質問も下にあるように見えるのですが,単発で 出していただいた方が答えやすいかも。