[英]Adding special characters while writing into a java file but not visible everywhere
我正在写入 java 文件通过
FileWriter fstream = new FileWriter("someFile.java");
BufferedWriter out = new BufferedWriter(fstream);
out.write(strContents);
// Close the output stream
out.close();
但是在写完之后我发现它附加了一些像[]这样的盒子形状的特殊字符,但是这些特殊字符只在像EditPlus这样的特定文本编辑器中可见。
如何在写作时避免这些特殊字符,或者它仅适用于某些编辑。
我的建议是完全避免使用FileWriter
。 它总是使用平台默认编码,这很少是一个好主意。
我建议使用包装在OutputStreamWriter
中的FileOutputStream
- 然后您只需要指定适当的编码,例如 UTF-8。 显然,您仍然需要使用支持 UTF-8 的编辑器,并且您可能需要告诉它编码......但至少您将拥有始终以相同方式编写的代码,无论操作系统和系统属性如何。
普通记事本应用程序无法显示文件中写入的特殊字符。 您的代码没有任何问题。 这是记事本的限制。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.