【发布时间】:2014-09-29 00:53:43
【问题描述】:
我编写了一个通过 UDP 向客户端发送数据的程序,但由于某种原因,我得到的一行有很多空格
例子:
line1:威廉莎士比亚 3432 Green Street Greenville 450-122-3435
第 2 行:
你知道我为什么要买这些吗?有些东西告诉我它与 buffer.length 有关,但我不确定。
DatagramSocket socket1 = new DatagramSocket();
InetAddress IP1 = msg.getAddress();
int port = msg.getPort();
Set set = (obj.getMAP()).entrySet();
Iterator i = set.iterator();
String total = "";
while(i.hasNext()) {
Map.Entry<String, ArrayList<Person>> me = (Map.Entry<String, ArrayList<Person>>)i.next();
Iterator<Account> it = (me.getValue()).iterator();
while(it.hasNext())
{
Account per = it.next();
String temp = per.getName() + " " + per.getAddress() + " " +
per.getPhoneNumber() + "\n";
total += temp;
}
}
byte[] buffer = total.getBytes();
DatagramPacket reply = new DatagramPacket(buffer, buffer.length, IP1, port);
socket1.send(reply);
socket1.close();
【问题讨论】:
-
第 2 行要做什么?
-
有很多空格,比如 100 之类的。它弄乱了我的整个程序。