刺符号(“þ”)不与猪脚本一起使用

时间:2016-01-08 17:40:38

标签: utf-8 apache-pig delimiter extended-ascii

我的输入数据有刺符号(“þ”)。
我试图根据那个刺符号在猪定制装载机中分割这些数据 在这里,我从猪脚本文件中调用该自定义加载程序,我将此符号作为参数传递给它 如果我运行相同的代码形式猪壳,该符号被识别,但如果我从猪脚本文件运行该代码,那么数据中的符号和我传递的符号彼此不同。

例如:     My data is : "abcþdefþghi"

来自pig shell的数据读作:abc�def�ghi
来自猪壳的符号读作:� and hex value is: fffd, decimal value: 65533

从猪脚本文件数据读取为:abc�def�ghi
从pig脚本文件符号读为:þ and hex value is: fe, decimal value: 254

1 个答案:

答案 0 :(得分:0)

它为我修好了...... 来自猪我的数据来自ISO_8859_1字符集 因此,我使用以下代码将分隔符字符集更改为ISO_8859_1。

new String(StandaradCharset.forName("ISO_8859_1").encode(<delimiter>).toArray());