2014.
08.
31
17:51:46
結論から書くと、
1.コマンドプロンプトのフォントを「MS ゴシック」に変更する
2.コマンドプロンプトを再起動して文字エンコードをUTF-8にする
コマンド例:
で、まぁ何とか日本語表示はできます。不便だけど。
それでは詳細を書いていきます。
ちょっくらコマンドプロンプトでUTF-8のテキストを扱いたくてですね。
いろいろ調べていたのです。
そしたら「chcp」コマンドを使って
を実行すれば、コマンドプロンプトの文字エンコードがUTF-8になると分かりました。
これで行けるんじゃね?
よし!早速やってみよう(--)☆
コマンドプロンプトを起動して~

を実行ヾ(´∀`)ノ
そしたら何かフォントがぶっとい感じになりましたφ(--;

まぁ良いや。
取りあえず「more」コマンドでファイルの中身を表示してみますかね。
を実行したところ……なんか怒られたφ(--;

だそうです。
いろいろ調べたのですが、解決方法は見つかりませんでした。
UTF-8ではmoreコマンドは使えないっぽいですね(--ゞ
仕方ないので「type」コマンドを使ったところ……文字化けがっφ(--;

力いっぱい文字化けってますねー(;´A`)
ほんで、あれやこれやと調べたところ、フォントの問題らしいと分かりました。
どうやら文字エンコードをUTF-8にしたときに使用されるフォントが
日本語に対応していないらしいです。
ちくしょう。
Google先生、助けておくれ。
ふむふむ(--)
コマンドプロンプトのフォントを事前に「MS ゴシック」にしておけば大丈夫っぽいですね。
じゃあ、やってみましょう。
新しいコマンドプロンプトを起動して「"コマンド プロンプト"のプロパティ」画面で
フォントを「MS ゴシック」に変更しますφ(--)

次に、以下のコマンドを実行して文字エンコードをUTF-8に変更します。
コマンドプロンプトを起動した段階で「MS ゴシック」になっていれば良いので、
一度終了して再度起動し、
でも良いですけどね。
レジストリをいじったりショートカットに登録したりする方法もあるようですが、
コマンドプロンプトを起動した段階でフォントが「MS ゴシック」になっていれば手段は問いません。
これで無事に、UTF-8のテキストが日本語表示できましたφ(--)

ちなみに、やっぱりmoreコマンドは使えませんでしたφ(--;

これで何とかコマンドプロンプト上でUTF-8のテキスト表示はできたのですが、
やっぱり使い勝手は良くないですね。
UTF-8の場合、コマンドプロント上から日本語入力ができません。
日本語入力モードにならないのです。
コピペはできるので、頑張れば入力できますが……でもねぇ(^^;
そして先程書いた通りmoreコマンドは使えないっぽいです。
あと、文字エンコードがUTF-8、フォントがMS ゴシックの状態でプロパティを開くと
というエラーメッセージが表示されます。

フォントの選択欄を見ると「MS ゴシック」の文字が無いので、
内部的に認識はしていても、本来は使用できるフォントに含まれていないのでしょうね。

こうやって見ると、コマンドプロンプトやバッチファイルで
UTF-8のテキストファイルを扱うのは、相当微妙っぽいですね。
できなくはないけど罠も多そうです。
UTF-8のファイルをそのまま扱うよりも、Shift-JISに変換する方向で考えた方が
無難かもしれませんね(--ゞ
取りあえず、完了\(--)/
1.コマンドプロンプトのフォントを「MS ゴシック」に変更する
2.コマンドプロンプトを再起動して文字エンコードをUTF-8にする
コマンド例:
cmd /f:on /k "chcp 65001"
で、まぁ何とか日本語表示はできます。不便だけど。
それでは詳細を書いていきます。
ちょっくらコマンドプロンプトでUTF-8のテキストを扱いたくてですね。
いろいろ調べていたのです。
そしたら「chcp」コマンドを使って
chcp 65001
を実行すれば、コマンドプロンプトの文字エンコードがUTF-8になると分かりました。
これで行けるんじゃね?
よし!早速やってみよう(--)☆
コマンドプロンプトを起動して~

chcp 65001
を実行ヾ(´∀`)ノ
そしたら何かフォントがぶっとい感じになりましたφ(--;

まぁ良いや。
取りあえず「more」コマンドでファイルの中身を表示してみますかね。
more test-utf8.txt
を実行したところ……なんか怒られたφ(--;

Not enough memory.
だそうです。
いろいろ調べたのですが、解決方法は見つかりませんでした。
UTF-8ではmoreコマンドは使えないっぽいですね(--ゞ
仕方ないので「type」コマンドを使ったところ……文字化けがっφ(--;

力いっぱい文字化けってますねー(;´A`)
ほんで、あれやこれやと調べたところ、フォントの問題らしいと分かりました。
どうやら文字エンコードをUTF-8にしたときに使用されるフォントが
日本語に対応していないらしいです。
ちくしょう。
Google先生、助けておくれ。
ふむふむ(--)
コマンドプロンプトのフォントを事前に「MS ゴシック」にしておけば大丈夫っぽいですね。
じゃあ、やってみましょう。
新しいコマンドプロンプトを起動して「"コマンド プロンプト"のプロパティ」画面で
フォントを「MS ゴシック」に変更しますφ(--)

次に、以下のコマンドを実行して文字エンコードをUTF-8に変更します。
cmd /f:on /k "chcp 65001"
コマンドプロンプトを起動した段階で「MS ゴシック」になっていれば良いので、
一度終了して再度起動し、
chcp 65001
でも良いですけどね。
レジストリをいじったりショートカットに登録したりする方法もあるようですが、
コマンドプロンプトを起動した段階でフォントが「MS ゴシック」になっていれば手段は問いません。
これで無事に、UTF-8のテキストが日本語表示できましたφ(--)

ちなみに、やっぱりmoreコマンドは使えませんでしたφ(--;

これで何とかコマンドプロンプト上でUTF-8のテキスト表示はできたのですが、
やっぱり使い勝手は良くないですね。
UTF-8の場合、コマンドプロント上から日本語入力ができません。
日本語入力モードにならないのです。
コピペはできるので、頑張れば入力できますが……でもねぇ(^^;
そして先程書いた通りmoreコマンドは使えないっぽいです。
あと、文字エンコードがUTF-8、フォントがMS ゴシックの状態でプロパティを開くと
ポイント サイズには 5 から 72 を指定してください。
というエラーメッセージが表示されます。

フォントの選択欄を見ると「MS ゴシック」の文字が無いので、
内部的に認識はしていても、本来は使用できるフォントに含まれていないのでしょうね。

こうやって見ると、コマンドプロンプトやバッチファイルで
UTF-8のテキストファイルを扱うのは、相当微妙っぽいですね。
できなくはないけど罠も多そうです。
UTF-8のファイルをそのまま扱うよりも、Shift-JISに変換する方向で考えた方が
無難かもしれませんね(--ゞ
取りあえず、完了\(--)/