【发布时间】:2012-12-21 04:09:22
【问题描述】:
我想通过Socket 发送多个随机值。我认为数组是发送它们的最佳方式。但是不知道怎么写数组到SocketOutputStream?
我的 Java 类:
导入 java.io.ByteArrayOutputStream; 导入 java.io.IOException; 导入 java.io.InputStream; 导入 java.net.Socket; 导入java.io.*; 导入 java.util.Random;
public class NodeCommunicator {
public static void main(String[] args) {
try {
Socket nodejs = new Socket("localhost", 8181);
Random randomGenerator = new Random();
for (int idx = 1; idx <= 1000; ++idx){
Thread.sleep(500);
int randomInt = randomGenerator.nextInt(35);
sendMessage(nodejs, randomInt + " ");
System.out.println(randomInt);
}
while(true){
Thread.sleep(1000);
}
} catch (Exception e) {
System.out.println("Connection terminated..Closing Java Client");
System.out.println("Error :- "+e);
}
}
public static void sendMessage(Socket s, String message) throws IOException {
s.getOutputStream().write(message.getBytes("UTF-8"));
s.getOutputStream().flush();
}
}
【问题讨论】:
-
这段代码有什么问题?什么以及如何不起作用?
-
您遇到的错误是什么
-
从他的解释来看,他似乎想在一次调用 write() 时发送一组消息,而不是遍历数组并逐个字符串发送每个字符串
标签: java sockets outputstream