Hive导入数据文件时中文乱码的解决

1.不要用SecureCRT,要用putty


2. 设置服务器的LANG=UTF8

在.bash_profile中,export LANG=zh_CN.UTF8


3. 数据文件也要用UTF8


4. 通过java读取GB2312的文件

BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream("data/170201.sql"), Charset.forName("GB2312")));
       
5. 写入文件,使用UTF8

newStr = new String(newStr.getBytes("UTF-8"),"UTF-8");

                     os.write(newStr.getBytes("UTF-8"));
                     os.write("\n".getBytes());
 

你可能感兴趣的:(hive)