簡體   English   中英

Java Unix字符編碼

[英]Java Unix character encoding

我正在從Unix運行我的Java程序。 為了簡化問題,我僅描述相關部分。

public static void main(String[] args) {  
    System.out.println("féminin");  
} 

我的輸出是垃圾。 顯然這是一個字符編碼問題,法語字符é無法正確顯示。 我嘗試了以下方法:

public static void main(String[] args) {  
    PrintStream ps = new PrintStream(System.out, true, "ISO-8859-1");  
    ps.println("féminin");  
} 

但是我的輸出仍然顯示嗎? 在法國人物的地方。
我使用java -Dfile.encoding=IBM437 DSIClient féminin在命令提示符下運行了sam efile
工作正常。 但是,如何解決Unix的字符編碼問題? 謝謝

問題很可能是您的代碼編輯器和終端仿真器使用了不同的編碼,並且Java的默認編碼概念也可能有所不同。

要看到,如果你的終端和編輯器同意,你可以簡單地cat Java源文件。 é是否正確顯示? 如果是這樣,則在源代碼編輯器和終端中使用相同的編碼,但這不是Java的默認編碼。 如果在OTOH中看不到é,則需要找出終端和編輯器使用的編碼並將它們綁定在一起。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM