易截截图软件、单文件、免安装、纯绿色、仅160KB

Java 读取 MySQL 中文 乱码

Java 读取 MySQL 中文 乱码
场景:Java,eclipse,读取MySQL数据库,MySQL编码为utf-8
问题:读出来的中文在eclipse的输出窗口中显示为乱码
错误的写法
1
   System.out.print(new String( rs.getString("bib_author").getBytes("utf-8"),"GBK" )); 

   System.out.print( rs.getString("bib_author")); 
Java中统一使用Unicode编码。
正确的写法:
System.out.print(new String (rs.getBytes("bib_author"),"utf-8") + " "); 
如划线加粗部分所示,应该先用二进制方式读进来,然后再转化为utf-8方式,和数据库中的编码一致。
下面是之前碰到过的一个例子,从web服务器读取数据,并转化为utf-8。web服务器使用的是iso-8859-1编码。
同样也是先用getbytes方式先获取二进制流,然后转成utf-8。
-------------------------------------------------------------------------------------------
3个地方设置编码,解决乱码问题
    public static String GetResponse(HttpMethodBase Method) throws IOException {
        String charset= Method.getResponseCharSet();
        System.out.println("返回的字符编码为:"+charset);
        InputStream responseBody = Method.getResponseBodyAsStream();
//        BufferedReader br = new BufferedReader(new InputStreamReader(responseBody));
        BufferedReader br = new BufferedReader(new InputStreamReader(Method.getResponseBodyAsStream(), "ISO-8859-1"));//1 
        String tempbf;
        StringBuffer htmlbf = new StringBuffer(100);
        while ((tempbf = br.readLine()) != null) {
//            htmlbf.append(tempbf);
            htmlbf.append(new String(tempbf.getBytes("iso-8859-1"),"utf-8"));//2 
            htmlbf.append("\n");
 


相关文档:

java入门

 Java学习从入门到精通 
一、 JDK (Java Development Kit) 
JDK是整个Java的核心,包括了Java运行环境(Java Runtime Envirnment),一堆Java工具和Java基础的类库(rt.jar)。不论什么Java应用服务器实质都是内置了某个版本的JDK。因此掌握JDK是学好Java的第一步。最主流的J ......

Java NIO API详解

 
Java NIO API详解
在JDK
1.4以前,Java的IO操作集中在java.io这个包中,是基于流的阻塞(blocking)API。对于大多数应用来说,这样的API使用很方
便,然而,一些对性能要求较高的应用,尤其是服务端应用,往往需要一个更为有效的方式来处理IO。从JDK 1.4起,NIO
API作为一个基于缓冲区,并能提供非阻塞(non-blo ......

MySQL连接时快时慢的问题解决

 my.ini里的那个tmp_table_size的值.原来tmp_table_size=16M.我改为32M
然后重启MYSQL还是没解决问题.
只好重启服务器试试了,结果重启后CPU正常了.不过还是没找出是什么原因导致MYSQL占用那么多CPU资源.
=====================================
修改hosts文件,加入一行   
172.16.59.12   & ......

java连接数据库

1.java连接Oracle数据库:
 Class.forName("oracle.jdbc.driver.OracleDriver");
 String url="jdbc:oracle:thin:@127.0.0.1:1521:全局数据库名";
 String uname="用户名";
 String pwd="密码";
 Connection cn =DriverManager.getConnection(url,uname,pwd);
 Statement s=cn.createS ......

Java 变量地址

本贴摘自 http://bbs.langsin.com/redirect.php?tid=9936&goto=lastpost
想打印一个String 变量的地址,请问如何来写?
不是hashcode,就是内存地址,而且要打印出来。
也许比较简单,不过我没写出来。
----------------------------------------------------------------------------------------
 使用Syst ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号