我可以使用echo生成UTF-8文本文件嗎? 例如,如果我想生成包含該字符「E」Windows批處理回聲UTF-8字符
echo "abcd ę" > out.txt
(批處理文件進行編碼UTF-8)
結果是一個ANSI編碼的文件和「E中的文件「人物變成了」ê「。 我如何說服「回聲」來生成一個UTF-8文件?
如果這是不可能的,那麼我可以在創建它後更改文本文件的編碼嗎? gnuwin32軟件包中是否有任何工具可以幫助我更改編碼?
感謝
我可以使用echo生成UTF-8文本文件嗎? 例如,如果我想生成包含該字符「E」Windows批處理回聲UTF-8字符
echo "abcd ę" > out.txt
(批處理文件進行編碼UTF-8)
結果是一個ANSI編碼的文件和「E中的文件「人物變成了」ê「。 我如何說服「回聲」來生成一個UTF-8文件?
如果這是不可能的,那麼我可以在創建它後更改文本文件的編碼嗎? gnuwin32軟件包中是否有任何工具可以幫助我更改編碼?
感謝
的問題是,該文件包含在所述行:
<META content="text/html; charset=iso-8859-2" http-equiv=Content-Type>
然後的Notepad2和Firefox被改變字符集,示出了代替E中。在普通的記事本中,文件看起來不錯。 的解決方案是在文件的開頭添加UTF-8簽名(字節順序標記):
echo1 -ne \xEF\xBB\xBF > out.htm
(ECHO1是的GnuWin32)
感謝您的答案
嘗試用/ U開關開始的CMD.exe:它導致所有管道輸出到是Unicode而不是ANSI。
使用chcp
命令將utf-8的活動代碼頁更改爲65001。
chcp 65001
謝謝,它的工作 – 2015-10-26 07:17:46
不適合我;( – brunobliss 2015-11-05 11:26:32
CHCP 65001
如提及由@cuixiping是一個很好的答案,但它需要更改CMD默認字體龍力控制檯例如,你可以在這裏閱讀: https://superuser.com/questions/237081/whats-the-code-page-of-utf-8#272184
當然,正如@BearCode所提到的那樣,文本應該在utf-8中...在我的情況下,VIM在GNU/Linux下可以遠程訪問,但notepad ++是正確的也是!
當我通過記事本查看out.txt中包含'abcdè'時,儘管在命令提示符窗口中它看起來像'abcd─'。我根本沒有得到'ê'。 – Neil 2012-08-14 23:47:42