您好,登錄后才能下訂單哦!
這篇文章主要介紹了Java Cmd運行Jar出現亂碼怎么辦,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。
做項目的時候遇到一個很頭疼的問題——無論在Java代碼中如何統一編碼為UTF8,在IDE中運行是完全沒問題的,但打包成Jar通過Bash和CMD運行,都會出現中文亂碼問題。
起初是覺得Java編譯時編碼出現了問題,但經過幾小時的排查,終于找到中文亂碼問題的根源——cmd/bash默認的編碼是GBK。為了防止日后再踩坑,本文記錄問題的解決方案。
打開cmd,輸入以下命令
chcp 65001
這樣既可以更改cmd的編碼為UTF-8了。
以下是常用的cmd編碼
字符編碼 對應字符
GBK(默認) 936
美國英語 437
utf-8 65001
在cmd下,常見運行Jar包的命令如下
java -jar project.jar
但這樣可能會使得java運行時編碼不正確導致的報錯,這時候我們可以將運行Jar時,指定編碼參數
java -Dfile.encoding=utf-8 -jar project.jar
每次啟動項目都要進行如上兩步的話,其實會非常麻煩,我們可以將以上兩部打包成bat批處理文件,具體步驟如下
通過記事本打開
可以看到,項目正常啟動,并且不會出現亂碼問題;
通過以上步驟,基本上可以將中文亂碼問題解決。
假設我們的A.java文件在F:\數據結構\課程設計\45目錄下
打開cmd進到F盤
然后輸入“cd\數據結構\課程設計\45”,進入文件存放路徑。成功之后會看到命令行前綴是帶有路徑的。
成功進入之后,輸入“javac A.java”,此時cmd界面沒有什么反應,但是在目錄下會自動生成一個A.class的class文件,說明編譯成功了。
然后回到命令行輸入“java A”,回車,輸入測試數據,得到結果。
in.txt文件為輸入的數據,out.txt為輸出數據。
注意,txt文件最好放在和java文件同級目錄下
之后out.txt會生成在45文件下
感謝你能夠認真閱讀完這篇文章,希望小編分享的“Java Cmd運行Jar出現亂碼怎么辦”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,更多相關知識等著你來學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。