2017-02-17 42 views
0

我創建了一個java gui來生成bat文件。 當我寫包含這樣的字符串蝙蝠:「L'UOMO彪長處」記事本++表示本:「L UOMO PI-長處?」從java代碼創建蝙蝠保留撇號和重音字符

下面是代碼:

FileOutputStream fos = new FileOutputStream(bat); 
Writer w = new BufferedWriter(new OutputStreamWriter(fos, "Cp850")); 
String stringa = "L’uomo più forte" 
w.write(stringa); 
w.write("\n"); 
w.write("pause"); 
w.write("\n"); 
w.flush(); 
w.close(); 

我不得不使用cp850進行dos使用。使用基礎字符集蝙蝠會給出錯誤。

解決方案?

回答

0

而不是使用「CP850」的:

Writer w = new BufferedWriter(new OutputStreamWriter(fos, "Cp850")); 

嘗試使用「UTF-8」:對UTF-8編碼Go Here

Writer w = new BufferedWriter(new OutputStreamWriter(fos, "UTF-8")); 

欲瞭解更多信息。

不要忘了將分號(;)在您的stringa字符串變量聲明/初始化結束和環繞你的代碼的try/catch塊來處理可能FileNotFoundException異常UnsupportedEncodingExceptionIOException異常。

...記事本,提供您還需要提供\ r標籤的新行:

w.write("\r\n"); 
0

你可以做到以下幾點:

  • 開放一個cmd.exe命令提示符會話。
  • 執行echo L’uomo più forte>text.txt命令。
  • 打開text.txt文件並在那裏複製字符串。
  • 將其粘貼到您的代碼中。

例如,我創建的text.txt文件時,它重命名爲test.bat和所附的echo命令。這是我的test.bat文件:

@echo off 

echo L'uomo pi— forte 

...這是輸出:

L'uomo più forte 

如果沒有正確顯示某些字符,則使用的代碼頁中不包含這樣的性格。

注意:我建議你使用標準的Windows記事本。記事本++程序可能會在這些情況下導致奇怪的輸出。