精华区 [关闭][返回]

当前位置:网易精华区>>讨论区精华>>编程开发>>● Java>>JAVA编程>>中文问题>>Java中文问题(参考9)

主题:Java中文问题(参考9)
发信人: head()
整理人: hht(1999-03-11 11:15:12), 站内信件
From:
                                                                       13:06
Subject: [中文Q&A]请问JDBC如何印出中文?To: [email protected]

From:      [email protected] via BBS mail gateway
Subject:   [中文Q&A]请问JDBC如何印出中文?
Date:      Tue Jun  9 13:06:05 1998
To:        To

 作者  [email protected] (盲灯),               看板  java
 标题  Re: 请问JDBC如何印出中文?
 时间  辅大美少女梦工场 BBS 站 (Sun Feb 23 12:54:39 1997)
———————————————————————————————————————

【 在 [email protected] (鲵也不过猪一只) 的大作中提到: 】
:         我在SQL Server里的纪录是中文的,
:         可是用JDBC取出来却变形...
:         请问该如何改进?

  我前几天才解决此问题 ..

  我是用 Java Applet -> socket -> Java Application -> database ..

  byte[] buff = new byte[512]; //buffer size 随你高兴.
  Socket sock = //这里做 socket 的初始化工作 ..

  ResultSet rs = //这里做 ResultSet 的初始化工作 ..
  DataOutputStream dataout =
        new DataOutputStream(new BufferedoutputStream(sock.getOutputStream()));
  InputStream in = rs.getAsciiStream(column_index); //column_index = Column numb
er.

  for (;;) {

     int size = in.read(buff);
     if (size == -1) break;
     dataout.write(buff, 0, size);
   }
  dataout.flush();

  这样就能把中文送过去了 ..

  如果你是用 System.out.println() 把 rs.getString(column_index) 所 get 到的字串
  show 出的话那是绝对办不到的 .. (只能跑出英文 .. 中文却是奇怪的码) ...
  我已经试过 N 遍了 .. 除非你用不一样的 output stream 去做 .. ( 不然就是另有我
  还没试过的方法 ) ..

--
☆ 来源:.广州网易BBS站 bbs.nease.net.[FROM: 202.101.127.250]

[关闭][返回]