已重写了TextOutputFormat设置输出文件格式编码为GBK。
直接使用€符号作为分割符的话,在linux中使用od -c命令查看文件€符号会显示成252,而需求是要求为200。
之前没接触过字符编码这块。所以很疑惑。如果在sqlload导出数据使直接用0x80
作为分割符号,倒是能达到需要的效果。不知道各位大神有没有明白需求?
这是输出文件在windows中的显示效果
1€LX_100001€打电话€基本业务功能
在liunux中需要实现使用od -c file命令查看文件会让€符号显示成 200
hadoop@xxxxxx:~$ head test1.dat |od -c
0000000 1 200 L X _ 1 0 0 0 0 1 200 264 362 265 347
0000020 273 260 200 273 371 261 276 322 265 316 361 271 246 304 334 \r
0000040 \n