使用Intelli idea调试kafka low consumer时,由于broker存储的message有中文,

idea中console端是可以正确显示的

然后mvn package打包到服务器上执行,结果中文乱码。

然后在kafka consumer代码中byte转为string时,使用了各种编码

String mes = new String(bytes,"UTF-8");
String mes = new String(bytes,"GBK");
String mes = new String(bytes,"iso8859-1");

问题还是没有解决。然后一直google,摆渡,看到有人说到jvm的默认编码会影响程序的编码,于是在程序中把

Charset.defaultCharset()打印出来,结果,在idea中显示的是UTF-8,在服务器上执行时就变成了US-ASCII。

我整个工程都是以UTF-8编码的,难怪在服务器上中文会乱码了。问题找到了,然后又经过一番折腾,终于解决了问题

在/etc/profile添加HADOOP_OPT="-Dfile encoding=UTF-8",保存退出 source /etc/profile,重新执行

hadoop jar kafkaHdfs-1.0-SNAPSHOT-jar-with-dependencies.jar org.conan.kafka.AllTopicsConsumer ./hdfs.properties

使用kafka consumer api时,中文乱码问题的更多相关文章

  1. Kafka Consumer API样例

    Kafka Consumer API样例 1. 自动确认Offset 说明参照:http://blog.csdn.net/xianzhen376/article/details/51167333 Pr ...

  2. SpringMVC学习系列-后记 解决GET请求时中文乱码的问题

    SpringMVC学习系列-后记 解决GET请求时中文乱码的问题 之前项目中的web.xml中的编码设置: <filter> <filter-name>CharacterEnc ...

  3. curl提交数据时中文乱码

    1.使用curl提交数据时中文乱码解决: <?php $testJSON=array('name'=>'中文字符串','value'=>'test'); foreach ( $tes ...

  4. maven测试时中文乱码问题解决方法

    pom.xml增加-Dfile.encoding=UTF-8配置,如下: <plugin> <!--升级到新版本解决控制台乱码问题--> <groupId>org. ...

  5. Mybatis新增mysql时中文乱码

    Mybatis新增mysql时中文乱码 1.设置数据库连接的编码(jdbc.properties) jdbc.driver=com.mysql.jdbc.Driver jdbc.url=jdbc:my ...

  6. 使用PLSQL Developer时中文乱码问题

    使用PLSQL Developer时中文乱码问题 一.问题: 执行一些查询结果有中文的SQL语句,显示不了中文,显示???. 二.产生的原因: 客户端与服务器端的编码不一致造成的. 三.解决方案: 1 ...

  7. mysql 恢复数据时中文乱码

    mysql恢复数据时中文乱码,解决办法. 用source命令导入mysql数据库怎么设置中文编码 1.导出数据时指定编码在导出mysql sql执行文件的时候,指定一下编码格式: mysqldump ...

  8. jquery中使用serialize() 序列化表单时 中文乱码问题

    序列化中文时之所以乱码是因为.serialize()调用了encodeURLComponent方法将数据编码了 解决方法就是进行解码 1 原因:.serialize()自动调用了encodeURICo ...

  9. Mybatis + Mysql 插入数据时中文乱码问题

    近日跟朋友一起建立一个项目,用的是spring+mybatis+mysql. 今天碰到一个mybatis向mysql中插入数据时,中文显示为'???'的问题,拿出来说下. 对于数据库操作中出现的中文乱 ...

随机推荐

  1. Ubutntu安装docker启动报Removed /etc/systemd/system/docker.service.

    Ubutntu安装docker启动报Removed /etc/systemd/system/docker.service.的错误,只需要执行以下三条命令. systemctl unmask docke ...

  2. eclipse下搭建shell脚本编辑器--安装开发shell的eclipse插件shelled

    具体请看: 亲测有效: http://www.cnblogs.com/shellshell/p/6122811.html

  3. 磁盘分区以及Linux目录挂载详解

    一.背景 一直以来,对于磁盘的分区以及Linux目录挂载的概念都不是很清晰,现在趁着春暖花开周末在家没事就研究了下它们,现在来分享我的理解. 二.概念详解 1.磁盘分区 磁盘分区是把物理的磁盘空间按照 ...

  4. js截取字符串的后几位数

    代码如下: var str="abcdefghhhh";//截取后4位 str.substring(str.length-4):

  5. 27-hadoop-hbase安装

    hbase的安装分为单机模式和完全分布式 单机模式 单机模式的安装很简单, 需要注意hbase自己内置一个zookeeper, 如果使用单机模式, 那么该机器的zookeepr不可以启动 1, 添加j ...

  6. shell脚本补缺

    一.执行脚本的三种方法. chmod  +x  添加执行权限 ./example.sh        相对路径 root/test/example.sh  绝对路径 bash example.sh   ...

  7. centos7 安装配置zookeeper

    https://blog.csdn.net/AaronLin6/article/details/78438877 https://www.cnblogs.com/sxdcgaq8080/p/74924 ...

  8. QT 手式编译步骤

    1: qmake -project 2: qmake 3: make 4: ./执行

  9. mac 入门操作

    1. 打开制定目录 在finder里使用command+shift+g 快捷键可以完成到达某路径的操作选中文件/目录,显示简介可以查看路径 2. home end pageUp pageDown 在苹 ...

  10. 白话$resource,$resource中的增删改查

    前言 $resource详解,在学习angular的过程中,我们已经知道,$http能十分便捷的为我们实现与后端的数据交互,格式如下: $http({method:'GET'},url:'XX').t ...