jsp/java读取mysql的blob类型字段中文乱码问题? 代码如下,但是出来的是乱码? 10

Stringstr="";//StringBuildersb=newStringBuilder();intlen=0;while((len=in.read(b))!=-1... String str = "";
//StringBuilder sb = new StringBuilder();
int len = 0;
while ((len = in.read(b)) != -1) {
str += new String(b, 0, len);
//sb.append((char) len);
}
每个blob类型长度为200字节,存储了100个数,为何这样提取出来是乱码?该如何做?
private static void readDB() {
try {
Connection conn = Test.getConnection();
String sql = "select * from dfi_data";
Statement stat = conn.createStatement();
ResultSet rs = stat.executeQuery(sql);
while(rs.next()){
InputStream in = rs.getBlob("data_blob").getBinaryStream();
byte[] b = new byte[1024];
String str="";
int len = 0;
while((len=in.read(b))!=-1){
str += new String(b,0,len);
}
System.out.println(str);
//System.out.println(Arrays.toString(str.getBytes()));
in.close();
}
} catch (SQLException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}

public static void main(String[] args) {
readDB();
}
展开
 我来答
muchao_119
2011-04-11 · TA获得超过119个赞
知道答主
回答量:44
采纳率:0%
帮助的人:34.5万
展开全部
IO流的编码设置问题吧,把完整代码发来看看
追问
已经发上去了!你看看!
追答
这么看,你这些代码是没有问题的  估计就是存进去的时候已经乱码了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式