因为我想把发送的信息封装到一个类里,如:String from,String to,Date date,String msg
我已经用Socket做了一个模型出来了,但是如果用Socket,好象只能发送流,无法发送一个数据包,只能将这些数据都写到流里请问我做这样一个聊天室(毕业设计),用哪个做比较好
Socket or DatagramSocket
我已经用Socket做了一个模型出来了,但是如果用Socket,好象只能发送流,无法发送一个数据包,只能将这些数据都写到流里请问我做这样一个聊天室(毕业设计),用哪个做比较好
Socket or DatagramSocket
解决方案 »
- windows下可以运行,上传到Ubuntu服务器就报错
- 正则表达式为何报错?能编译,但不能运行
- 为什么国内的JAVA论坛这么冷清
- 新手用j2sdk出现的奇怪问题
- 如何用JAVA实现在WEB中报表显示大量的数据?多谢
- 请在http://expert.csdn.net/Expert/topic/1266/1266042.xml?temp=.5106623上有帮助的近来领分!记住,有没有长点的原代码?
- 请问session bean和实体bean的区别
- 关于日期和download的问题
- 如何获取java程序在运行过程中哪些类或者哪些方法被调用了,或者是调用的关系等
- 帮改错(二):
- 什么是抛出异常?以及为什么要抛出异常?
- my-proxy.com 捉取代理
现在的问题是我不知道getData()和setData()这2个方法是什么意思
怎么样把收到的数据包的内容打出来?import java.io.IOException;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.SocketException;public class NewSvr {
public static void main(String[] args)
{
DatagramSocket serverSocket = null;
try
{
serverSocket = new DatagramSocket(8888);
}
catch (SocketException e)
{
e.printStackTrace();
}
DatagramPacket packet = new DatagramPacket(new byte[512], 512);
try
{
serverSocket.receive(packet);
//System.out.println(packet.getData());
//怎么把收到的包的内容在这里打出来
}
catch (IOException e)
{
e.printStackTrace();
} }
}/***********************************/import java.io.IOException;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.InetAddress;
import java.net.SocketException;
import java.net.UnknownHostException;public class NewClt {
public static void main(String[] args)
{
DatagramSocket clientSocket = null;
try
{
clientSocket = new DatagramSocket();
}
catch (SocketException e)
{
e.printStackTrace();
}
String toSend = "This is the data to send!";
byte[] sendbuf = new byte[ toSend.length() ];
sendbuf = toSend.getBytes();
InetAddress address = null;
try
{
address = InetAddress.getLocalHost();
}
catch (UnknownHostException e1)
{
e1.printStackTrace();
}
DatagramPacket sendPacket = new DatagramPacket( sendbuf, sendbuf.length, address, 8888);
try
{
clientSocket.send(sendPacket);
}
catch (IOException e)
{
e.printStackTrace();
} }
}