您似乎正在正确地将文件数据从UTF-8字符串解码为UTF-16字符串。
System.out
执行从UTF-16字符串到默认JRE字符编码的代码转换操作。如果这不匹配,则接收字符数据的设备使用的编码将被破坏。因此,应将控制台设置为默认字符编码,否则会发生数据损坏。如何完成此操作取决于设备。
如果使用终端,则控制台在确定设备编码方面做得更好。
注意:最好使用 try-with-resources或至少 try-finally
来关闭流;使用标准编码常量(如果有)。
如何使用土耳其语字符在Java中读取UTF 8编码文件
您似乎正在正确地将文件数据从UTF-8字符串解码为UTF-16字符串。
System.out
执行从UTF-16字符串到默认JRE字符编码的代码转换操作。如果这不匹配,则接收字符数据的设备使用的编码将被破坏。因此,应将控制台设置为默认字符编码,否则会发生数据损坏。如何完成此操作取决于设备。
如果使用终端,则控制台在确定设备编码方面做得更好。
注意:最好使用 try-with-resources或至少 try-finally
来关闭流;使用标准编码常量(如果有)。