我已经尝试了下面的代码:
运行后,我得到了一个包含以下链的文件:N E T W O R K; 结果文件大小为14字节(7个字符* 2字节)。请注意链中字符之间的空格。 当我使用UTF_16LE更改编码时,我得到一个大小为14字节的文件,其中包含以下字符串:NETWORK。字符之间没有空格!!我期望得到的字符串如下:N E T W O R K。我使用记事本打开文件。 有人能解释这种行为吗?
public static void main(String[] args) throws IOException {
String s = "NETWORK";
try (
FileOutputStream fos = new FileOutputStream("d:/endian.txt");
OutputStreamWriter osw = new OutputStreamWriter(fos, "UTF_16BE");) {
osw.write(s);
osw.flush();
}
}
运行后,我得到了一个包含以下链的文件:N E T W O R K; 结果文件大小为14字节(7个字符* 2字节)。请注意链中字符之间的空格。 当我使用UTF_16LE更改编码时,我得到一个大小为14字节的文件,其中包含以下字符串:NETWORK。字符之间没有空格!!我期望得到的字符串如下:N E T W O R K。我使用记事本打开文件。 有人能解释这种行为吗?