我正在 Mac (Snow Leopard) 上工作。使用 Java,我清除文件内容然后写入。 这是清除文件的代码:
new File(FileName).delete();
new File(FileName).createNewFile();
之后,当我写入文件时,我发现奇怪的字符;例如: 而不是写:
expected ‘=’, ‘,’, ‘;’, ‘asm’
它写道:
expected ‘=’, ‘,’, ‘;’, ‘asm’
我确信 createNewFile() 会导致问题,因为当我将相同的文本写入手动创建的文件时不会出现问题。我能做什么?
谢谢。
最佳答案
您在某处引入了转码错误。
您在 Java 中将数据编码为 UTF-8,但无论您使用什么方式对其进行解码,都会将数据视为(可能)MacRoman。
或者,您的 Java 编辑器将文件保存为 UTF-8,而您的编译器在编译之前将其解码为 MacRoman。
阅读this .
关于java - 写入文件时出现奇怪的字符 (Mac) (Java),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7640932/