问一个Java Socket编程问题
发送端:
public class UDPSend {
public static void main(String[] args) throws IOException {
DatagramSocket ds =new DatagramSocket();
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));//输入数据
String line=null;
while((line=br.readLine())!=null)
{
if("886".equals(line))
{
break;
}
byte[] b=line.getBytes();
DatagramPacket dp=new DatagramPacket
(b,b.length,InetAddress.getByName("192.168.252.1"),3303);
ds.send(dp);
}
ds.close();
}
}
接收端:
public class UPDReceive {
public static void main(String[] args) throws IOException {
DatagramSocket ds=new DatagramSocket(3303);
while(true)
{
byte[] b=new byte[1024];
DatagramPacket dp=new DatagramPacket(b,b.length);
ds.receive(dp);
String ip=dp.getAddress().getHostAddress();
String s=new String(dp.getData(),0,dp.getLength(),"UTF-8");
System.out.println("ip:"+ip+",字符串:"+s);
}
}
}
结果我在发送端输入"你好“,接收端的结果是:ip:192.168.252.1,字符串:浣犲ソ
字符串的内容并没有转码。我这个项目的Text file encoding属性也设置成UTF-8了
为什么结果没有转码呢???求大神解答。。