从DB中得到字符串,然后需要转码UTF8发给接口
假设DB得到字符串: "一s二三aaa一平二三要转ddd换的字符bbb八九"
strBuf.append(new String(rs.getString("content").getBytes("UTF-8")));
对方收到,转会来,丢字了,结果:"二三aaa二三要转ddd换的字符bbb八九"郁闷啊
假设DB得到字符串: "一s二三aaa一平二三要转ddd换的字符bbb八九"
strBuf.append(new String(rs.getString("content").getBytes("UTF-8")));
对方收到,转会来,丢字了,结果:"二三aaa二三要转ddd换的字符bbb八九"郁闷啊
发过去:Test-123456消息测试下的子哈看
和对方连接,还有别的,人家发过去是对的
不过他们都是C写的,我这边是JAVA
过去就少了:一二
结果是:
三四?AAA-AAA消息测ab。KKKK-KKKK
鎯充綘涓?晩浜屽氨涓夊洓锛烝AA-AAA娑堟伅娴媋b銆侹KKK-KKKK
看来这样转不行啊,里面有?发过去结果是:
想你二就三四?AAA-AAA消息测ab。KKKK-KKKK
约定很简单,就是以UTF8发一个固定长度的字符串过去
指定一下字符集
这样
new String(rs.getString("content").getBytes("UTF-8")).length()这个来传长度看看
URLEncoder
URLDEcoder
试试