プログラミング言語や環境設定を中心としたパソコン関連の技術メモです。
主にシステム開発中に調べたことをメモしています。TIPS的な位置付けで、気が向いたときにちまちま更新していきます。
コマンド「chcp 65001」を実行してコマンドプロンプトの文字エンコードをUTF-8にしたけど日本語表示で苦戦したお話
結論から書くと、

1.コマンドプロンプトのフォントを「MS ゴシック」に変更する
2.コマンドプロンプトを再起動して文字エンコードをUTF-8にする

 コマンド例:
cmd /f:on /k "chcp 65001"

で、まぁ何とか日本語表示はできます。不便だけど。

それでは詳細を書いていきます。

ちょっくらコマンドプロンプトでUTF-8のテキストを扱いたくてですね。
いろいろ調べていたのです。

そしたら「chcp」コマンドを使って

chcp 65001

を実行すれば、コマンドプロンプトの文字エンコードがUTF-8になると分かりました。

これで行けるんじゃね?
よし!早速やってみよう(--)☆

コマンドプロンプトを起動して~

20140831-01.png


chcp 65001

を実行ヾ(´∀`)ノ

そしたら何かフォントがぶっとい感じになりましたφ(--;

20140831-02.png


まぁ良いや。

取りあえず「more」コマンドでファイルの中身を表示してみますかね。

more test-utf8.txt

を実行したところ……なんか怒られたφ(--;

20140831-03.png


Not enough memory.

だそうです。
いろいろ調べたのですが、解決方法は見つかりませんでした。
UTF-8ではmoreコマンドは使えないっぽいですね(--ゞ

仕方ないので「type」コマンドを使ったところ……文字化けがっφ(--;

20140831-04.png


力いっぱい文字化けってますねー(;´A`)

ほんで、あれやこれやと調べたところ、フォントの問題らしいと分かりました。
どうやら文字エンコードをUTF-8にしたときに使用されるフォントが
日本語に対応していないらしいです。

ちくしょう。
Google先生、助けておくれ。

ふむふむ(--)

コマンドプロンプトのフォントを事前に「MS ゴシック」にしておけば大丈夫っぽいですね。
じゃあ、やってみましょう。

新しいコマンドプロンプトを起動して「"コマンド プロンプト"のプロパティ」画面で
フォントを「MS ゴシック」に変更しますφ(--)

20140831-05.png


次に、以下のコマンドを実行して文字エンコードをUTF-8に変更します。

cmd /f:on /k "chcp 65001"

コマンドプロンプトを起動した段階で「MS ゴシック」になっていれば良いので、
一度終了して再度起動し、

chcp 65001

でも良いですけどね。

レジストリをいじったりショートカットに登録したりする方法もあるようですが、
コマンドプロンプトを起動した段階でフォントが「MS ゴシック」になっていれば手段は問いません。

これで無事に、UTF-8のテキストが日本語表示できましたφ(--)

20140831-06.png


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

20140831-07.png


これで何とかコマンドプロンプト上でUTF-8のテキスト表示はできたのですが、
やっぱり使い勝手は良くないですね。

UTF-8の場合、コマンドプロント上から日本語入力ができません。
日本語入力モードにならないのです。
コピペはできるので、頑張れば入力できますが……でもねぇ(^^;

そして先程書いた通りmoreコマンドは使えないっぽいです。

あと、文字エンコードがUTF-8、フォントがMS ゴシックの状態でプロパティを開くと

ポイント サイズには 5 から 72 を指定してください。

というエラーメッセージが表示されます。

20140831-08.png


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

20140831-09.png


こうやって見ると、コマンドプロンプトやバッチファイルで
UTF-8のテキストファイルを扱うのは、相当微妙っぽいですね。
できなくはないけど罠も多そうです。

UTF-8のファイルをそのまま扱うよりも、Shift-JISに変換する方向で考えた方が
無難かもしれませんね(--ゞ

取りあえず、完了\(--)/
スポンサーリンク
 
このエントリーをはてなブックマークに追加 

category:コマンド/バッチ  thema:システム開発 - genre:コンピュータ  Posted by ササキマコト 

  関連記事