0
Java에서 데이터 스트림을 읽는 방법을 알려주세요. 내 요구 사항은 라우터에 텔넷 연결을 만드는 것입니다. 이 부분은 완성되었습니다. 라우터에서 텔넷을 통해 IP 주소와 포트 번호를 사용하여 xxx 원격 시스템에 연결해야합니다. 이 연결을 만드는 동안 나는 약간의 반응을 얻고있다. 그러나 읽는 동안 프로그램 컨트롤은 InputStream 클래스의 read() 메서드에서 중단됩니다. 다음은 데이터 스트림을 읽는 데 사용하는 코드 스 니펫입니다. 무슨 일이 일어나고 무엇데이터 스트림에서 데이터를 읽는 방법
buff = new byte[4*1024];
ret_read = 0;
do
{
ret_read = in.read(buff); // Program control gets hanged here. Once all the data are read...
if(ret_read > 0)
{
System.out.println(new String(buff,0,ret_read));
}
}while(ret_read > 0);
더 많은 데이터를 읽을 때까지 기다리는 중입니다. 그러나 스트림에는 데이터가 없습니다. 그래서 read() 메소드에서 나오는 법. –
available()을 사용하여 읽기 전에 무엇이 있는지 알아 보거나 소켓 채널과 같은 비 차단 연결을 사용할 수 있습니다. http://docs.oracle.com/javase/6/docs/api/java /nio/channels/SocketChannel.html –
감사합니다. Tim. 그러나 InputStream 클래스의 available() 메서드는 항상 0을 반환합니다. 그래서 난 비 차단 연결을 시도 할 것입니다() –