Java FileWriter lost special characters

I've this code

 //write a file in a specific directory
public static void writeFile(String comment, String outputFileName) {
    FileWriter fWriter = null;
    BufferedWriter writer = null; 
    try {
        fWriter = new FileWriter(outputFileName,true);
        writer = new BufferedWriter(fWriter);
        writer.write(comment);
        writer.newLine();
        writer.close();
    } catch (Exception e) {
        System.out.println(e.getMessage());
    }
}

But when I save the file in outputFileName, it lost every special character.

File output format is .txt

Some solution?

Thanks a lot

Jon Skeet
people
quotationmark

FileWriter uses the platform-default encoding. It's very rarely a good idea to use that class, IMO.

I would suggest you use an OutputStreamWriter specifying the encoding you want - where UTF-8 is almost always a good choice, when you have a choice.

If you're using Java 7 or higher, Files.newBufferedWriter is your friend - and with Java 8, there's an overload without a Charset parameter, in which case UTF-8 is used automatically.

people

See more on this question at Stackoverflow