⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 567790.xml

📁 论坛精华帖子
💻 XML
字号:
<?xml version='1.0' encoding='GB2312'?>
<?xml-stylesheet type='text/xsl' href='../csdn.xsl'?>
<Topic>
<Issue>
<PostUserNickName>福尔马林</PostUserNickName>
<rank>二级(初级)</rank>
<ranknum>user2</ranknum>
<credit>111</credit>
<TopicId>567790</TopicId>
<TopicName>apache+tomcat3.2.3+mm.mysql+mysql3.22+jdk1.3.1中文问题,急!!!!分不够还可以再加..</TopicName>
<PostUserId>52370</PostUserId>
<PostUserName>formalin</PostUserName>
<RoomName>JSP</RoomName>
<ReplyNum>7</ReplyNum>
<PostDateTime>2002-3-11 11:25:24</PostDateTime>
<Point>100</Point>
<ReadNum>0</ReadNum>
<RoomId>28</RoomId>
<EndState>2</EndState>
<Content>环境:linux+apache+tomcat3.2.3+mm.mysql+mysql3.22+jdk1.3.1
在bean中更新数据库,在sql语句中的中文是好的(由打印内码得知),但是到了数据库里就都成了问号(内码全是3f)。
请各位帮帮忙,分不够还可以再加。</Content>
</Issue>
<Replys>
<Reply>
<PostUserNickName>冰雪天</PostUserNickName>
<rank>二级(初级)</rank>
<ranknum>user2</ranknum>
<credit>100</credit>
<ReplyID>3780615</ReplyID>
<TopicID>567790</TopicID>
<PostUserId>120249</PostUserId>
<PostUserName>lsb</PostUserName>
<Point>0</Point>
<Content>刚好解决了这个问题你就赶上了:
package&#32;db;
import&#32;&#32;sun.io.*;
&#32;&#32;/**
&#32;&#32;&#32;&#32;*
&#32;&#32;&#32;&#32;*/
&#32;&#32;&#32;&#32;///////////////////////////////////////////////////////////////////////////////////////
&#32;&#32;//字符转化类,其中封装了从Ascii到中文&#32;&#32;与&#32;&#32;从中文到Ascii&#32;&#32;的静态函数&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;//&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;//
&#32;&#32;////////////////////////////////////////////////////////////////////////////////////////
&#32;&#32;public&#32;&#32;final&#32;&#32;class&#32;&#32;ChinessChange&#32;&#32;&#32;&#32;{
&#32;&#32;
&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;/**&#32;&#32;Creates&#32;&#32;new&#32;&#32;ChinessChange&#32;&#32;*/
&#32;&#32;
&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;public&#32;&#32;static&#32;&#32;String&#32;&#32;AsciiToChineseString(String&#32;&#32;s)&#32;&#32;{
&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;char[]&#32;&#32;orig&#32;&#32;=&#32;&#32;s.toCharArray();
&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;byte[]&#32;&#32;dest&#32;&#32;=&#32;&#32;new&#32;&#32;byte[orig.length];
&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;for&#32;&#32;(int&#32;&#32;i=0;i&lt;&#32;&#32;orig.length;i++)
&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;dest[i]&#32;&#32;=&#32;&#32;(byte)(orig[i]&amp;&#32;&#32;0xFF);
&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;try&#32;&#32;{
&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;ByteToCharConverter&#32;&#32;toChar&#32;&#32;=&#32;&#32;ByteToCharConverter.getConverter("gb2312");
&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;return&#32;&#32;new&#32;&#32;String(toChar.convertAll(dest));
&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;}
&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;catch&#32;&#32;(Exception&#32;&#32;e)&#32;&#32;{
&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;System.out.println(e);
&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;return&#32;&#32;s;
&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;}
&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;}
&#32;&#32;
&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;public&#32;&#32;static&#32;&#32;String&#32;&#32;ChineseStringToAscii(String&#32;&#32;s)&#32;&#32;{
&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;try&#32;&#32;{
&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;CharToByteConverter&#32;&#32;toByte&#32;&#32;=&#32;&#32;CharToByteConverter.getConverter("gb2312");
&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;byte[]&#32;&#32;orig&#32;&#32;=&#32;&#32;toByte.convertAll(s.toCharArray());
&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;char[]&#32;&#32;dest&#32;&#32;=&#32;&#32;new&#32;&#32;char[orig.length];
&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;for&#32;&#32;(int&#32;&#32;i=0;i&lt;&#32;&#32;orig.length;i++)
&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;dest[i]&#32;&#32;=&#32;&#32;(char)(orig[i]&#32;&#32;&amp;&#32;&#32;&#32;&#32;0xFF);
&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;return&#32;&#32;new&#32;&#32;String(dest);
&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;}
&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;catch&#32;&#32;(Exception&#32;&#32;e)&#32;&#32;{
&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;System.out.println(e);
&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;return&#32;&#32;s;
&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;}
&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;}
&#32;&#32;
&#32;&#32;}
将此函数做成一个javabean在jsp中调用即可!</Content>
<PostDateTime>2002-3-11 11:35:41</PostDateTime>
</Reply>
<Reply>
<PostUserNickName>宝宝猫</PostUserNickName>
<rank>一星(中级)</rank>
<ranknum>star1</ranknum>
<credit>100</credit>
<ReplyID>3781334</ReplyID>
<TopicID>567790</TopicID>
<PostUserId>193243</PostUserId>
<PostUserName>jimjxr</PostUserName>
<Point>100</Point>
<Content>看看这个可能有启发:http://www.csdn.net/expert/topic/550/550063.xml?temp=.142666

“mysql支持中文的,你不必非用ISO8859,要让mysql支持中文你需要:&#32;
1.&#32;&#32;在mysql配置文件中配置default&#32;&#32;charset:default-character-set&#32;&#32;=&#32;&#32;gbk&#32;
2.&#32;&#32;在jdbc连接时声明使用gb2312或gbk://host:3306/dbname?user=username&amp;password=pass&amp;useUnicode=true&amp;characterEncoding=GBK”</Content>
<PostDateTime>2002-3-11 12:24:44</PostDateTime>
</Reply>
<Reply>
<PostUserNickName>兰色梧桐</PostUserNickName>
<rank>四级(中级)</rank>
<ranknum>user4</ranknum>
<credit>100</credit>
<ReplyID>3781764</ReplyID>
<TopicID>567790</TopicID>
<PostUserId>30847</PostUserId>
<PostUserName>Justin</PostUserName>
<Point>0</Point>
<Content>和&#32;lsb(冰雪天)(▲▲)&#32;的大同小异:

package&#32;db;

import&#32;java.util.*;
import&#32;java.sql.*;
import&#32;java.io.*;

public&#32;class&#32;DbConnection{
&#32;&#32;&#32;&#32;//&#32;这里是连接数据库等方法
&#32;&#32;&#32;&#32;....
&#32;&#32;&#32;&#32;//&#32;to&#32;gb2312
&#32;&#32;&#32;&#32;public&#32;static&#32;String&#32;bytes2gb(String&#32;gb)&#32;{
&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;String&#32;s&#32;=null;&#32;
&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;if(gb!=null)&#32;{&#32;
&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;try{&#32;
&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;s&#32;=&#32;new&#32;String(gb.getBytes("ISO8859_1"),"GB2312");&#32;
&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;}catch(Exception&#32;e)&#32;{
&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;System.out.println(e.toString());&#32;
&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;e.printStackTrace();&#32;
&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;}&#32;
&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;}&#32;
&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;return&#32;s;&#32;
&#32;&#32;&#32;&#32;}&#32;
&#32;&#32;&#32;&#32;//&#32;to&#32;bytes
&#32;&#32;&#32;&#32;public&#32;static&#32;String&#32;gb2bytes(String&#32;bytes)&#32;{
&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;String&#32;s&#32;=null;&#32;
&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;if(bytes!=null)&#32;{&#32;
&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;try&#32;{&#32;
&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;s&#32;=&#32;new&#32;String(bytes.getBytes("GB2312"),"ISO8859_1");&#32;
&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;}catch(Exception&#32;e){&#32;
&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;System.out.println(e.toString());&#32;
&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;e.printStackTrace();&#32;
&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;}&#32;
&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;}&#32;
&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;return&#32;s;&#32;
&#32;&#32;&#32;&#32;}&#32;
}

使用方法:

凡是用到rs.getString()语句的改成:(从数据库读出文件)
db.DbConnection.bytes2gb(rs.getString("title"));

凡是request.getParameter()改成:(即将写入数据库的数据)
db.DbConnection.gb2bytes(request.getParameter("sign"));

基本就搞定了。</Content>
<PostDateTime>2002-3-11 12:52:54</PostDateTime>
</Reply>
<Reply>
<PostUserNickName>福尔马林</PostUserNickName>
<rank>二级(初级)</rank>
<ranknum>user2</ranknum>
<credit>111</credit>
<ReplyID>3782256</ReplyID>
<TopicID>567790</TopicID>
<PostUserId>52370</PostUserId>
<PostUserName>formalin</PostUserName>
<Point>0</Point>
<Content>lsb的方法我试过了,不行。
转化後的字符串还好,可一进库里,就都成3f(?)了。
另外&#32;to&#32;justin:对于数据库中已有的中文,用rs.getString()取出时,就已经变成3f了,任你再怎么编码又有什么用?
宝宝猫的方法我正在试,请大家继续提供方案。</Content>
<PostDateTime>2002-3-11 13:18:14</PostDateTime>
</Reply>
<Reply>
<PostUserNickName>兰色梧桐</PostUserNickName>
<rank>四级(中级)</rank>
<ranknum>user4</ranknum>
<credit>100</credit>
<ReplyID>3786406</ReplyID>
<TopicID>567790</TopicID>
<PostUserId>30847</PostUserId>
<PostUserName>Justin</PostUserName>
<Point>0</Point>
<Content>你没有试过吗?我可是在redhat&#32;linux7.0&#32;;redhat&#32;linux7.1;&#32;win2k下调试过的。</Content>
<PostDateTime>2002-3-11 17:04:27</PostDateTime>
</Reply>
<Reply>
<PostUserNickName>兰色梧桐</PostUserNickName>
<rank>四级(中级)</rank>
<ranknum>user4</ranknum>
<credit>100</credit>
<ReplyID>3786556</ReplyID>
<TopicID>567790</TopicID>
<PostUserId>30847</PostUserId>
<PostUserName>Justin</PostUserName>
<Point>0</Point>
<Content>你可能还是不明白我说的意思,给你个图表:

&#32;&#32;&#32;&#32;汉字&#32;--&gt;&#32;gb2bytes()&#32;--&gt;&#32;[database]&#32;--&gt;&#32;bytes2gb()&#32;--&gt;&#32;显示


另外每个jsp页面要添加
&lt;%@page&#32;contentType="text/html;&#32;charset=gb2312"%&gt;</Content>
<PostDateTime>2002-3-11 17:12:07</PostDateTime>
</Reply>
<Reply>
<PostUserNickName>福尔马林</PostUserNickName>
<rank>二级(初级)</rank>
<ranknum>user2</ranknum>
<credit>111</credit>
<ReplyID>3802136</ReplyID>
<TopicID>567790</TopicID>
<PostUserId>52370</PostUserId>
<PostUserName>formalin</PostUserName>
<Point>0</Point>
<Content>谢谢jimjxr(宝宝猫)&#32;
我终于解决了中文问题,不过characterEncoding=ISO8859-1
再一次谢谢,可惜只能给100分。</Content>
<PostDateTime>2002-3-12 18:28:11</PostDateTime>
</Reply>
</Replys>
</Topic>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -