From: "U.Nakamura" Date: 2008-01-28T17:01:30+09:00 Subject: [ruby-dev:33451] Re: Win32OLE: set encoding to OLE string こんにちは、なかむら(う)です。 In message "[ruby-dev:33450] Re: Win32OLE: set encoding to OLE string" on Jan.28,2008 16:55:27, wrote: | 以前、-Kオプションに合わせて、Win32OLE側のコードページを変更して | くれ(-KuのときにUTF-8にしてくれ)という要望がありました。 | | 当時から、Ruby 本体側で、m17n化の絡みで、-K オプションは無くす | 方向という話が出ていたので、-Kオプションは敢えて無視して、 | コードページを指定できるようにしました。 なるほどー。 この辺は将来性を見越した設計だったんですね。 | > 理想は、CP_ACP(OEMCPかな)に変換しないで、取ってきたままのUTF-16LE | > あるいは成瀬さんの言うようにUTF-8で返すことだと思います。 | > が、現実問題として互換性を維持する必要はそれなりにあると思い | > ますので、とりあえずは cWIN32OLE_cp をrubyのEncodingにマップ | > した形で設定するのがよいのではないかと思います。 | | 単なる確認なのですが、ruby の Encoding というのは、 | Encoding.default_external(rb_default_external()) のこと | という理解で合ってますか? あ、そうじゃなくて、Windowsのコードページ(932とか10001とか)に 対応したrb_encoding *という意味でした。 | あと、cWIN32OLE_cp (Windowsのコードページ) と ruby の Encoding | を対応づけるような都合のいいAPIは、Rubyには用意されていない | ですよね? ないです、が、作ってみようかと考えたりして悶々としてます。 それでは。 -- U.Nakamura