2016-03-23 18 views
0

私のプログラムはMACでうまく動作しますが、WINDOWSで試してみると、すべての特殊文字は%$ &になります。私はノルウェー語ですので、特殊文字はほとんどæøåです。特殊文字でファイルに保存

これは、私は、ファイルへの書き込みに使用したコードです:今、私は特殊文字は、両方のOSで正しく書き込まれますことを保証することができますどのように

File file = new File("Notes.txt"); 
    if (file.exists() && !file.isDirectory()) { 
     try(PrintWriter pw = new PrintWriter(new BufferedWriter(new FileWriter("Notes.txt", true)))) { 

      pw.println(""); 
      pw.println("*****"); 
      pw.println(notat.getId()); 
      pw.println(notat.getTitle()); 
      pw.println(notat.getNote()); 
      pw.println(notat.getDate()); 

      pw.close(); 

     }catch (Exception e) { 
      //Did not find file 
     } 
    } else { 
     //Did not find file 
    } 

注:IntelliJを使用し、プログラムは.jarファイルです。

+0

Hei!あなたが書かれた後にファイルを見るためにあなたは何を使用しますか(Windows上)?キャラクターセットの不一致のようです。その場合は、JavaプログラムがWinodwsに間違った文字セットを使用するか、ビューアが使用します。私はこの点であなたのJavaコードに間違いがないことを見ています。 –

+0

テキストエディタ、オープンオフィス、メモ帳..何でも – Peter

+0

奇妙な...部屋にWindows専門家はいますか? :-) –

答えて

2

Macでの操作と同じように、Windowsで同じエンコードを使用していることを確認してください。

IDEAは、右下隅にエンコードを表示します。さらに、エンコードSettings -> Editor -> File Encodingsを設定することもできます。 エンコードプロジェクトを幅広く設定することも、ファイルごとに設定することもできます。

さらに、java default file encodingを読んで、ファイルの読み書きは常に同じ文字セットを使用することを確認してください。