- 締切済み
コマンドプロンプトの日本語表示がおかしい
windowsXPを使用していますが、コマンドプロンプトでの日本語表示がおかしくなりました。 例えばrubyで $KCODE="s" puts("日本語テスト") と書きShift_JISコードで保存します。これを実行すると、コマンドプロンプト画面には 坙{語テストtest.rb:2:in `write': Bad file descriptor (Errno::EBADF) とでます。rubyのバージョンは1.8.7です。ruby -Ksとオプションを付けても同じです。 また、pythonでは 日本語テスト eスト g と3行にわたって表示され、 scalaでは 日本語テストテストXトg と余計な文字がくっついてきます。 複数のプログラム言語で表示がおかしく、rubyにいたってはエラーにもなるなど、 原因はプログラム及びプログラム言語側にはなく、当方の環境・windows側に 原因があると思われます。他のwindows端末では正常に表示されます。 どなたか原因・対策がわかるかたはいないでしょうか? これまでしたことはそれぞれの言語の再インストール、xpインストールCDでの windows復元インストール、正常に動作する端末からcmd.exeのコピーです。 なお、コマンドプロンプト上からcommand.comを呼び出せば その上ではそれぞれ正常に動作します。しかし、いったんexitでcmd.exe側に抜けると ダメで、command.com単体でもダメです。 command.comではレスポンスや操作等の問題でこの方法を常用したくありません。 どうかよろしくおねがいします。
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- notnot
- ベストアンサー率47% (4900/10358)
ちょっと見当がつきませんが、基本的な確認を。 chcpコマンドで、「現在のコード ページ: 932」 になってますよね。 あと、Rubyプログラムの起動は、 ruby -Ks test.rb で、リダイレクトも何もしてませんよね?
補足
notnotさん、回答ありがとうございます。 chcpも932になっています。また、rubyもリダイレクト は使っていません。 申し訳ないですが、かなり環境依存の問題みたいですので 一旦締め切ります