hive表数据导出到csv乱码原因及解决方案
2014-12-24 17:46
2141 查看
hive表中的数据使用hive - e"select * from table">aa.csv导出到csv文件的时候在window中用Excel打开查看的时候是乱码,而且格式也不对。
原因有下面两个:
1.乱码的原因是用excel打开csv时格式默认为gbk,但是从hive中导出来的是utf8的
2.格式不对的原因是csv文件的列分隔符是逗号或者\t,而hive中默认使用\001
解决办法:
使用hive中的concat_ws函数将所有列连接起来组成一列。
concat_ws('分隔符',列1,列2,……),语句如下
hive -e " select concat_ws(',',cat1,cat2,dd_name) as onecl from dd_prod">testaa.csv
然后再使用iconv -f UTF-8 -c -t GBK testaa.csv > testbb.csv转换编码。得到的testbb.csv没有乱码格式也对。
原因有下面两个:
1.乱码的原因是用excel打开csv时格式默认为gbk,但是从hive中导出来的是utf8的
2.格式不对的原因是csv文件的列分隔符是逗号或者\t,而hive中默认使用\001
解决办法:
使用hive中的concat_ws函数将所有列连接起来组成一列。
concat_ws('分隔符',列1,列2,……),语句如下
hive -e " select concat_ws(',',cat1,cat2,dd_name) as onecl from dd_prod">testaa.csv
然后再使用iconv -f UTF-8 -c -t GBK testaa.csv > testbb.csv转换编码。得到的testbb.csv没有乱码格式也对。
相关文章推荐
- hive表数据导出到csv乱码原因及解决方案
- VtigerCRM5.4.0数据导出导入csv乱码修复
- 解决PLSQL Developer导出CSV文件数据显示乱码和科学计数法问题
- Hive数据仓库--Hive导出至Mysql中文乱码问题
- hive大数据数据倾斜原因与解决方案总结
- C#导出csv文件 防止中文乱码的解决方案
- MySQL Workbench导出csv格式文件打开后发现数据乱码解决方法
- 完美解决php 导出excle的.csv格式的数据时乱码问题
- C#导出csv文件 防止中文乱码的解决方案
- hive:导出数据记录中null被替换为\n的解决方案
- 导出CSV数据中文乱码和文件名乱码
- MySQL Workbench导出csv格式文件打开后发现数据乱码解决方法
- INTO OUTFILE 导出数据乱码解决方案顺便附带INTO OUTFILE中使用变量方法
- Mysql 导入CSV数据 语句 导入时出现乱码的解决方案
- INTO OUTFILE 导出数据乱码解决方案顺便附带INTO OUTFILE中使用变量方法
- VtigerCRM5.4.0数据导出导入csv乱码修复
- JSON导出CSV中文乱码解决方案
- [MySQL Help]MySQL Workbench用csv格式导出数据乱码
- 自定义C/C++ dll导出后函数名为乱码(如@func@@YGXHX@Z)原因以及解决方案
- SpringMVC导出CSV文件中文出现乱码解决方案