站内搜索: 请输入搜索关键词

当前页面: JAVA 编程资料牛鼻论坛Java 手机开发技术→[求助]不同手机的汉字收发的实现

[求助]不同手机的汉字收发的实现

发表新主题   回复此主题

第1楼 2005-08-01 02:03 seakid 写道:

[求助]不同手机的汉字收发的实现

最近作了一个汉字通信的试验,发现了点问题,跟大家交流一下,看看有没有大侠碰到同样的问题。有没有好的解决方案。
服务器端用writeUTF()发送汉字,手机端接收。在索爱P802上测试没问题,在索爱K506上测试也没问题。
手机端用writeUTF()发送汉字,服务器端接收。在索爱P802上测试没问题,但是完全相同的代码在索爱K506上测试就是不成功。服务器返回的结果是参数接收失败。
后来改用将汉字作UTF-8编码再放在url里面传的方法,这回k506可以,但是P802又不行了。经测试,P802的UTF-8编码不正常,同样的代码,汉字编码后都成了3F3F。
我的问题是:各位大侠有没有哪位碰到跟我一样的问题?手机端和服务器端之间汉字的传送有没有一个与手机终端独立的通用的方案?还是这个问题根本就没有完美的答案呢?

第2楼 2013-08-31 12:44 Robot :

[求助]不同手机的汉字收发的实现 相关


第3楼 2005-08-01 11:29 evzhy 写道:

一个可能的解决方法是,
服务器发送汉字都成功,
但是接受汉字可能不成功,
说明服务器接受汉字的时候,
没有指出汉字编码,
可能用的是系统编码,
为此,
启动服务器的时候,
要加上编码,
如果你的服务器是java服务器的话,
还有一个解决方法,
就是一律用uicode双字节编码来发送接受,


第4楼 2005-08-01 14:02 seakid 写道:

多谢evzhy的回复。不过我还是有点不明白:
1)用writeUTF()发送汉字的时候,汉字的编码是UTF-8格式的,是指定了汉字编码方式的。
2)同样的代码,同样的服务器,用P802测试是成功的。没理由怀疑服务器接收汉字有故障。
难道这样的问题要问厂家才有答案?

第5楼 2005-08-01 16:15 evzhy 写道:

那你可以写个服务器端测试程序,用ascii字节编码来接受,看看收到的是否真的是utf-8,有可能手机jvm的类库api出bug了

第6楼 2005-08-02 02:43 seakid 写道:

我写了一个测试程序,将汉字用UTF-8编码,然后在手机上把编码后的bytes显示出来(如1的编码显示31)。结果是:K506能显示英文数字和汉字,P802只能正常显示英文和数字,汉字显示3F。看过一些资料,知道是P802在处理汉字时前面错误地加了东西,写几行代码可以把加错的东西去掉,但是这好像不是办法呀。
我需要的是跨平台的汉字通信解决方案。
再次多谢老大的回复。

第7楼 2005-08-02 15:25 evzhy 写道:

你不要用utf-8了,
用非编码的字节流

第8楼 2005-08-03 02:05 seakid 写道:



QUOTE:
下面引用由evzhy2005/08/02 12:25pm 发表的内容:
你不要用utf-8了,
用非编码的字节流

这好像是唯一的办法。如果真是这样,很多东西要改了。

发表新主题   回复此主题