java 读取mysql blob字段乱码
程序员文章站
2022-04-03 08:53:10
...
场景
使用java作为后端操作数据库, 插入的时候是好的(数据库也显示的中文), 但是查询出来的时候就变成乱码了…
分析
同一条数据, 别的字段的中文存取都是正常的, 唯独这个blob
格式的字段存进去中文, 取出来就变成乱码了
原因
blob
存储的是二进制格式, 最大好像支持到2g
如果存储的是存文本的话可以使用text
格式
解决方案
方案一: 修改格式
修改数据库字段格式, 将blob
字段格式改为text
的格式
方案二: 转换字符编码
在java 代码中将字符编码手动转换
blob = new String(blob.getBytes(CharsetNames.ISO_8859_1),CharsetNames.UTF_8)