在hadoop / cascading中处理UTF-16LE编码文件

时间:2018-02-08 09:49:28

标签: java hadoop mapreduce cascading utf-16le

我需要在hadoop之上级联处理UTF-16LE编码文件。我尝试了以下方法,但这些都没有奏效。

  • 将值-Xmx1024m -Dfile.encoding=UTF-16LE分配给 mapred-site.xml 中的属性mapreduce.map.java.opts 由于NullPointerException而失败:com.google.common.base.Preconditions.checkNotNull(Preconditions.java:187)但此方法适用于UTF-8。 hadoop无法处理UTF-16数据吗?
  • 在代码中执行System.setProperty("file.encoding", "UTF-16LE");也是 无法解析数据
  • 覆盖TextDelimited类的Cascading的字符集也是 无法处理数据

然而,使用BufferedReader以UTF-16LE读取它会正确解析数据。

请帮忙

提前致谢

1 个答案:

答案 0 :(得分:0)

在某处发现:Hadoop不支持UTF-16文件