中文问题

daowang 2002-09-29 03:59:11
最近编了一个程序,为聊天程序,一切工作正常
,英文好用,但一旦输入中文
。,对方便收到一串????????????????????其中问号个数不定
试问为何?
怎样解决?
速速回答,
谢谢
...全文
49 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
喝醉的咖啡 2002-10-07
  • 打赏
  • 举报
回复
to elapsed(Maverick) :
我认为你的方法欠妥,回复了你的帖子,请指教 :)
to wjmmml(笑着悲伤):
我同意你的方法,不过你的那篇散分的文章我回复了,纠正了对Unicode的理解,多多交流 :)
喝醉的咖啡 2002-10-07
  • 打赏
  • 举报
回复
你在socket传输数据的时候都用的iso8859_1吧?
显示聊天内容的时候是用web呢还是applet?
如果是jsp/servlet输出的web,那么需要先把iso8859_1的内容转成gbk或者gb2312给浏览器才行。
如上贴
newstring = new String(s.getBytes("ISO8859_1"),"gb2312");
至于content-type最好也设置一下。
如果是applet用awt的话,还需要选择合适的字体。
hnalbert 2002-10-07
  • 打赏
  • 举报
回复
各位大侠:

简体字输入到数据库,然衙到繁体机上查看,会出现乱码。

请问如何解决?
daowang 2002-10-04
  • 打赏
  • 举报
回复
各位大哥:
由于在下比较笨
还是没整好,清明见
wjmmml 2002-09-29
  • 打赏
  • 举报
回复
试试下面的方法,
如果解决不了,就把代码帖出来。
解决办法:
第一:
在jsp页面加入:
<%@ page contentType="text/html; charset=gb2312" %>
或者在servlet里面
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
response.setContentType("text/html; charset=gb2312");
上面的如果在不行就用如下的方法在数据入库前进行调用:
public static String UnicodeToChinese(String s){
try{
if(s==null||s.equals("")) return "";
String newstring=null;
newstring=new String(s.getBytes("ISO8859_1"),"gb2312");
return newstring;
}
catch(UnsupportedEncodingException e)
{
return s;
}
}

public static String ChineseToUnicode(String s){
try{
if(s==null||s.equals("")) return "";
String newstring=null;
newstring=new String(s.getBytes("gb2312"),"ISO8859_1");
return newstring;
}
catch(UnsupportedEncodingException e)
{
return s;
}
}
倪大爺爺 2002-09-29
  • 打赏
  • 举报
回复
参考,http://www.csdn.net/expert/topic/1064/1064137.xml?temp=.8647425

我刚刚发表的,要是有什么还不明白,请告诉我~

62,629

社区成员

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

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