社区
Java SE
帖子详情
通过DatagramPacket的GETDATA()得到的信息,在TEXTAERA中不能正常显示中文,但可以显示英文,郁闷中,怎样才能显示中文?
无欲则钢
2004-03-15 02:14:59
通过DatagramPacket的GETDATA()得到的信息,在TEXTAERA中不能正常显示中文,但可以显示英文,郁闷中,怎样才能显示中文?
...全文
108
6
打赏
收藏
通过DatagramPacket的GETDATA()得到的信息,在TEXTAERA中不能正常显示中文,但可以显示英文,郁闷中,怎样才能显示中文?
通过DatagramPacket的GETDATA()得到的信息,在TEXTAERA中不能正常显示中文,但可以显示英文,郁闷中,怎样才能显示中文?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
6 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
无欲则钢
2004-03-16
打赏
举报
回复
yuning
无欲则钢
2004-03-15
打赏
举报
回复
public String getMessage()
{
dp=(DatagramPacket)dpsvector.firstElement();
String raw = new String(dp.getData());
try{
return "中文"; //可以显示
//return new String(raw.getBytes("ISO-8859-1"),"gb2312"); //不能正常显示
//return new String(raw.getBytes("ISO-8859-1"),"GBK"); //不能正常显示
}
catch(Exception e){
return null;
}
}
到底是发的时候的问题,还是收的时候的问题?
无欲则钢
2004-03-15
打赏
举报
回复
多谢了,我去试试看。
kkcncry
2004-03-15
打赏
举报
回复
问题出在你的解码方式~
将你接受到的字符串按“ISO-8859-1”编码,然后再按“gb2312”解码就可以看到你的字符串了~
new String(参数.getBytes("ISO-8859-1"),"gb2312");
yeshucheng
2004-03-15
打赏
举报
回复
.....
try{
参数= new String(参数.getBytes("ISO-8859-1"),"GBK");
}
catch(Exception e){
return null;
}
....
无欲则钢
2004-03-15
打赏
举报
回复
没人吗??
java_icq.rar_
Data
gram
Packet
基于JAVA的ICQ系统当用户通过UDP收到消息后,可以通过
Data
gram
Packet
的方法InetAddress getAddress()
得到
对方的ip地址,通过对好友列表比较以判断是谁并提示用户收到某某的消息,然后用户选择该用户查看消息,如果好友列表没有该人就
显示
收到陌生人的消息。用户可以按陌生人按钮查看消息。
Java实现UDP服务器和客户端模型.rar
Java实现UDP服务器模型,内含UDP服务器端模型和UDP客户端模型两个小程序,向JAVA初学者演示UDP C/S结构的原理。比如客户端模型如下:
Data
gram
Socket socket=new
Data
gram
Socket(); //实例化一个数据报Socket InetAddress address=InetAddress.getByName(host); //服务器地址 byte[] buffer=new byte[256]; //缓冲区
Data
gram
Packet
packet
=new
Data
gram
Packet
(buffer,buffer.length,address,port); //实例化一个数据报 socket.send(
packet
); //发送报文
packet
=new
Data
gram
Packet
(buffer,buffer.length); socket.receive(
packet
); //接受回应 String message=new String(
packet
.get
Data
()); //
得到
报文
信息
System.out.println("Received from: "
packet
.getAddress()); //
显示
信息
源地址 System.out.println(message); //
显示
服务器返回
信息
socket.close(); //关闭端口 请下载完整源码包。
计算机网络课程设计报告-UDP编程.docx
计算机网络课程设计报告-UDP编程.docx 一、问题描述 (1)目的:实现UDP(User
Data
Protocol)编程,包括发送和接受UDP报文。 (2)技术要求: 1、Java.net.
Data
gram
Scoket类和Java.net.
Data
grm
Packet
类可以实现UDP编程,前者实现与目标主机的连接 (这种连接不需要目标主机的认可),后者用于封装UDP包。 2、发送UDP包时,先将数据包装成
Data
gram
Packet
对象,然后建立一个
Data
gram
Scoket,调用它的send方法,将
Data
gram
Packet
发送给目标主机。 3、接受UDP包时,建立一个侦听本地端口的
Data
gram
Scoket,创建一个空的
Data
gram
Packet
对象,以存放收到的报文,调用
Data
gram
Scoket的receive方法将收到的UDP包写入到
Data
gram
Packet
对象
中
。 4、
Data
gram
Packet
的getAddress方法能获得UDP消息发送者的网络地址
信息
。
Data
gram
Packet
.get
Data
()与
Data
gram
Packet
.getLength()的误区
在自己做socket编程的时候,用udp进行数据传送实现一对一的问题咨询的功能
中
,遇到了一个问题,
Data
gram
Packet
.get
Data
()获取的数据的长度不是自己发送的数据长度,比如我发送的是"ss"字符串,接收到的长度应该为2,但是通过
Data
gram
Packet
.get
Data
().length
得到
的数据长度并不是2,而是61440,但是
Data
gram
Packet
.getLength...
Java
Data
gram
Packet
中
的坑
转载请注明来源 目录 问题说明 这里给出两种解决方法 方法一:使用getLength()截取更新的数据部分。下图
中
,使用substring(0,p.getLength())截取了p.get
Data
()
中
被更新的数据部分。 方法二:每次接收数据开始前,对
Data
gram
Packet
的数据进行置零。下图
中
,从第一次开始,都对
Data
gram
Packet
前getLength()个字节的数据进行...
Java SE
62,615
社区成员
307,318
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章