在写入java文件时添加特殊字符但在任何地方都不可见

时间:2011-06-29 11:10:59

标签: java special-characters

我正在通过

写入一个java文件
               FileWriter fstream = new FileWriter("someFile.java");
                BufferedWriter out = new BufferedWriter(fstream);
                out.write(strContents);
                // Close the output stream
                out.close();

但在写完之后我发现它附加了一些像[]这样的盒子形状的特殊字符,但这些特殊字符只能在特定的文本编辑器中看到,比如EditPlus。

如何在写作时避免使用这些特殊字符,或仅限于某些编辑。

2 个答案:

答案 0 :(得分:5)

我的建议是避免完全使用FileWriter总是使用平台默认编码,这很少是一个好主意。

我建议使用包含在FileOutputStream中的OutputStreamWriter - 然后您只需要指定适当的编码,例如UTF-8。显然你仍然需要使用支持UTF-8的编辑器,你可能需要告诉它编码......但至少你会有始终以相同的方式写入。

答案 1 :(得分:0)

普通记事本应用程序无法显示文件中写入的特殊字符。您的代码没有任何问题。这是记事本的限制。