WindowsのコマンドプロンプトからUTF-8でファイルに書き込むことは
できないのでしょうか。
コマンドプロンプトから直接実行するとTeraPadでは「Unicode」と
表示されました。
なぜ、バッチファイルからの実行では「SJIS」(日本語があると「UTF-8N」)で
コマンドプロンプトからでは「Unicode」になるのでしょうか。
「バッチファイルを作る」または「UTF-8で書き込めるエディタを使う」
の方法で解決はしています。ただ、しっかりわかっておかないと後々困りそうで
質問しました。
バッチファイルsamplewrite.batを作成し、ファイルに書き込みを
行って、TeraPadで開き文字コードを参照すると「SJIS」と表示されました。
samplewrite.bat
@echo off chcp 65001 echo 1 > sample.txt echo 2 >> sample.txt echo 3 >> sample.txt
実行
PS C:\Users\hoge .\samplewrite.bat
TeraPadでは「SJIS」
set HOGE=ほげ echo %HOGE%>>sample.txt
の2行を追加すると
を行うと、TeraPadでは「UTF-8N」と表示されました。
同様のことをバッチファイルではなく、コマンドプロンプトから
直接実行するとTeraPadでは「Unicode」と表示されます。
PS C:\Users\hogek> chcp 65001 Active code page: 65001 PS C:\Users\hoge> echo 1 > sample2.txt PS C:\Users\hoge> more .\sample2.txt 1 PS C:\Users\hoge> echo 2 >> sample2.txt PS C:\Users\hoge> echo 3 >> sample2.txt PS C:\Users\hoge> more .\sample2.txt 1 2 3
TeraPadでは「Unicode」
回答4件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/11/22 04:47