你这个算是典型的编码问题吧你都用UTF发和收byte[] sendmsgs = String.getBytes("UTF-8");
send...收
java.io.BufferReader br = new java.io.BufferReader(new java.io.inputStreamReader(in, "UTF-8")while((String s=br.readline())!=null)
{
...
}
send...收
java.io.BufferReader br = new java.io.BufferReader(new java.io.inputStreamReader(in, "UTF-8")while((String s=br.readline())!=null)
{
...
}
解决方案 »
- static 和 private是什么意义
- myeclipse8.0 装find bugs
- java 使用JNative 调用 dll 问题~ 在线等
- NB中定义资源 和 资源使用的问题
- 象netbeans一样,窗口可以随意变大变小,收起来后可以边上显示的窗口是怎么做的啊?
- switch(expr1)中,expr1是一个整数表达式。因此传递给 switch 和 case 语句的参数应该是 int、 short、 char 或者 byte。long,string
- 在java中执行外部程序,得不到标准输出,那位大虾帮帮我
- 【怪问题!关于颜色】
- 菜鸟有问题,高手过来拣分呀。。。。。。
- 小问题请教高手:try中的语句为何不执行!!!
- JCreator中Debug模式的问题
- 如何创建一个文件,但当文件已存在时返回出错信息?
byte[] buffer = new byte[1024];
receivePacket = new DatagramPacket(buffer, buffer.length);
receiveSocket.receive(receivePacket);
byte[] data = receivePacket.getData();
received = new String(data, 0, data.length);
发送:
String s = sendmessage.getText().trim();
byte[] data = s.getBytes("UTF-8");
Clientwindow.sendPacket = new
DatagramPacket(data, s.length(), InetAddress.getByName(theip),
theport);接收:
byte[] buffer = new byte[1024];
receivePacket = new DatagramPacket(buffer, buffer.length);
receiveSocket.receive(receivePacket);
byte[] data = receivePacket.getData();
received = new String(data,"UTF-8");
在发送数据时packet=new DatagramPacket(buf,buf.length,address,port);应该根据实际的大小