Java JDBC-ODBC 连接 Access 数据库 中文乱码解决
2010-08-11 20:51
721 查看
由于Java的String类型使用的是unicode编码,而微软的Access数据库使用的是gbk编码。使用String类型的变量存储Access中的文本字段中文会发生乱码现象。
使用byte[]类型可以解决这一问题。
rs.updateBytes("columnName",str.getBytes("gbk"));[/code]
使用byte[]类型可以解决这一问题。
1.更新到数据库的文本字段
使用ResultSet的updateBytes方法
public void updateBytes(String columnName, byte[] x) throws SQLException
String str="要写入数据库的中文";//utf-8
使用String的getBytes方法
[code]public byte[] getBytes(String charsetName) throws UnsupportedEncodingException
转换编码格式为gbk
rs.updateBytes("columnName",str.getBytes("gbk"));[/code]
rs.updateRow();
这样写入Access数据库的中文字符便正常了;
2.从数据库字段读取文本
使用String类的构造函数
public String(byte[] bytes, String charsetName) throws UnsupportedEncodingException
str=new String(rs.getBytes("columnName"),"gbk");
这样读取到String中的中文字符便正常了。
上面就是解决Access数据文本字段和String类型间乱码问题的方法。
本质上说,就是编码类型不匹配。需要根据情况进行编码类型转换。
这是要有效的利用字节数据类型的方法,来达到目的,使用合适的API方法。
相关文章推荐
- Java JDBC-ODBC 连接 Access 数据库 中文乱码解决
- Java JDBC-ODBC 连接 Access 数据库 中文乱码解决
- Access java jdbc连接出现 中文乱码解决方案!!!
- java jdbc连接Access数据库 出现中文乱码问题解决
- matlab: 通过 odbc 数据源连接 mysql 数据库,并解决数据中文乱码
- 中文乱码--MySQL5.0中文问题及JDBC数据库连接和JSP汉字编码问题解决方法总
- Java:jdbc连接数据库插入中文数据乱码问题
- JAVA通过JDBC连接Mysql获取中文输出乱码解决方法
- Java:jdbc数据库连接出现中文乱码问题
- java使用 jdbc连接access数据库-中文显示乱码(已解决)
- java:jdbc连接数据插入中文数据乱码解决办法:
- java 连access 数据库 解决插入中文乱码
- Access java jdbc连接 insert插入的数据 中文乱码解决方案!!!
- Java:jdbc连接数据库插入中文数据乱码问题
- JDBC连接mysql处理中文时乱码解决办法详解
- MySQL5.0中文问题及JDBC数据库连接和JSP汉字编码问题解决方法总结
- Informix数据库通过ODBC驱动连接中文乱码问题解决方案
- 关于C++用ODBC连接数据库中文显示乱码的问题
- JSP页面与数据库连接中出现的中文乱码问题分析与解决
- Hive中文乱码(JDBC连接HiveServer2)问题解决