肯定是电脑的问题,我的程序没问题,很奇怪的问题,好久没遇到这么奇怪的问题了?

chenshengli 2005-12-26 06:24:33
环境:WEBSPHERE5.1,设置的默认字符集是GBK

有两个页面
第一个页面有一个广框,文本框的内容是从数据库里取出的
<input name="clname" type=text value="<%=rs.getString(1)%>">
点提交,提交到第二个页面:

第二个页面用来接收第一个页面的表单提交的内容如下:
String aaa = request.getParameter("clname");
out.print(aaa);
System.out.print(aaa);
out.close();

问题:
当在第一个页面里输入"桑塔纳"的时候
第二个页面的显示:桑塔纳,在WEBSPHERE的日志文件SystemOut.log里显示也是"桑塔纳"

当在第一个页面里输入"丰田霸道"的时候
第二个页面的显示:丰田霸道,在WEBSPHERE的日志文件SystemOut.log里显示却是形如"磡,샀,侩,袁"的鬼东西
输入"测试"两个字的时候也是这样,有乱码,这问题也太夸张了吧!

请高手赐教,小弟不胜感激!
...全文
176 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
YuigAzul 2005-12-28
  • 打赏
  • 举报
回复
我一直的经验:要是觉得肯定是电脑有问题,到最后的结果肯定是我出错了!
温柔的小和尚 2005-12-28
  • 打赏
  • 举报
回复
电脑永远不会错,错只能出在人身上!
mandm 2005-12-26
  • 打赏
  • 举报
回复
兄弟,先把问题解决了吧,基本上可以肯定是在getParameter那里出来的问题.
实践是检验真理的唯一标准,动手先吧
理论嘛,有时间再谈:)
chenshengli 2005-12-26
  • 打赏
  • 举报
回复
再说,这种情况为什么有时出现,有时不出现呢,
chenshengli 2005-12-26
  • 打赏
  • 举报
回复
再说情况是这样:
比如说表里有一个字段要存放姓名, VARCHAR(10),存放中国的人名足够了吧,上面所说的情况一旦发生,那么生成的SQL语句就会变成这样
insert into table_name (xm) values ('"磡,샀,侩,袁');

而正常情况下应该生成的是这样才对:
insert into table_name (xm) values ('欧阳大明');

那么在第一种情况下只有把字段设置成100以上就能正常运行了,但这样明显不太合适, 我想知道各位大侠都是怎么解决这种问题的?

chenshengli 2005-12-26
  • 打赏
  • 举报
回复
楼上解释的我不是太明白, 就算是这样,但为什么同样是汉字,两次运行的结果会不一样呢?
mandm 2005-12-26
  • 打赏
  • 举报
回复
编码方式的问题啦,介绍编文章给你看吧.看完了如果还搞不定再问吧.

http://www.javaresearch.org/article/showarticle.jsp?column=106&thread=19240
humanity 2005-12-26
  • 打赏
  • 举报
回复
"磡,샀,侩,袁 是直接写给浏览器看的, 当你的服务器用 ISO-8859-1 处理时,不能直接看非英文字符,它就全都转化成 &#xxxx 了.

62,629

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧