외부 입력에서 영원히 데이터 듣기 매초마다 청취하며 데이터를 수신하면 무언가를 할 것입니다. 데이터를 수신하지 못하면 계속해서 데이터를 수신합니다.자바 - 내가 얼마나 u는 외부 입력을들을 경우 유 등이 같이</p> <p>버튼을 클릭하면, texfield 입력과 같은 이벤트를 할 수있는 동안 영원히 부탁드립니다
듣고있는 동안, 나는 위에서 언급 한 것처럼 이벤트를 할 수 있습니다.
죄송합니다.
외부 입력에서 영원히 데이터 듣기 매초마다 청취하며 데이터를 수신하면 무언가를 할 것입니다. 데이터를 수신하지 못하면 계속해서 데이터를 수신합니다.자바 - 내가 얼마나 u는 외부 입력을들을 경우 유 등이 같이</p> <p>버튼을 클릭하면, texfield 입력과 같은 이벤트를 할 수있는 동안 영원히 부탁드립니다
듣고있는 동안, 나는 위에서 언급 한 것처럼 이벤트를 할 수 있습니다.
죄송합니다.
스트림에서 읽을 수있는 유일한 방법은 별도의 스레드입니다. 마지막 바이트 읽기와 라벨을 업데이트하기를 원한다면 바보 같은 예를 들어,이 같은 작동 될 수 있습니다
static void startListening(DataInputStream inputStream, JLabel label) {
new Thread(() -> {
try {
while (true) {
int i = inputStream.read();
if (i < 0) {
updateText(label, "Closed");
break;
} else {
updateText(label, "Latest byte: " + i);
}
}
} catch (Exception e) {
updateText(label, "Error: " + e);
}
}).start();
}
static void updateText(JLabel label, String text) {
SwingUtilities.invokeLater(() -> label.setText(text));
}
대단히 감사합니다. 나는이 코드를 지금 시도 할 것이다. 나는 바로 돌아올 것이다 :) –
다른 클래스에서이 함수를 호출하는 방법 선생님? (필자의 경우, DataOutputStream을 수행하는 Java를 실행하는 다른 노트북에서). –
글쎄, 그냥 다른 랩톱에서 호출 할 수는 없지만 왜 필요하겠습니까? 연결 한 직후에 데이터를 듣기 만하면됩니까? – xs0
한 가지 방법은 정확히 외부에 어떤 청취 .. – xs0
을하는 새로운 스레드를 시작하는 것입니다 입력? – xs0
소켓의 데이터 입력 선생님. (데이터 입력 스트림) –