【问题标题】:Java, Reading a file that has UCS-2 Little Endian encodeingJava,读取具有 UCS-2 Little Endian 编码的文件
【发布时间】:2019-03-04 18:24:37
【问题描述】:

我正在尝试读取具有 UCS-2 LE 编码的 txt 文件,下面有以下代码。这 ???是我需要的编码变量,但我不确定它应该是什么。

InputStream HostFile = new FileInputStream(Location + FileName);
Reader file = new InputStreamReader(HostFile, Charset.forName(???);
PrintWriter writer = new PrintWriter(outLocation, "UTF-8");

任何想法都将不胜感激。

【问题讨论】:

  • 试试:Charset.availableCharsets().forEach((t, u) -> { System.out.println(t + ": " + u); }); 看看有什么可用的。
  • @Sedrick 我发现它是 UTF-16LE 感谢您的帮助
  • 而且它在 StandardCharsets 常量中。
  • UTF-16 与 UCS-2 相似,但不完全相同。含义:这取决于文件中使用的字符。

标签: java file fileinputstream inputstreamreader


【解决方案1】:
Reader file = new InputStreamReader(HostFile, Charset.forName("UTF-16LE");

【讨论】:

  • 使用StandardCharsets.UTF_16LE
猜你喜欢
  • 2013-06-09
  • 2021-11-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-07-09
  • 1970-01-01
  • 2013-08-16
  • 1970-01-01
相关资源
最近更新 更多