Я хочу отправить некоторые данные с помощью TCP Socket; ввод клавиатуры в порядке. также перенаправляет двоичные файлы. но когда я перенаправляю/dev/urandom к stdin (java prog </dev/urandom) ничего не происходит, ошибок нет, никаких данных не отправлять.Java Socket/TCP и/dev/urandom
public class P1{
static DataInputStream dis = new DataInputStream(System.in);
int port = 12345;
String host = "127.0.0.1";
Socket p1Socket;
DataOutputStream out;
byte data;
void run() {
try{
p1Socket = new Socket(host, port);
out = new DataOutputStream(p1Socket.getOutputStream());
while (dis.available() >0){
data = dis.readByte();
out.write (data );
}
out.flush();
out.close();
p1Socket.close();
}catch(Exception e){
e.printStackTrace();
}
}
public static void main(String args[]) throws IOException {
P1 p1 = new P1();
while (dis.available() <=0);
p1.run();
}
}
Удивительно ли, что вы никогда не закончили подготовку к отправке бесконечного количества данных? –