[질문]간단한 참조방법과 Nullpoint오류 조언 부탁드립니다
아리에스
echoMsg를 다른 클래스에서 쓰려고 하는데 제가 아는방법으론 잘 안되네여
어떻게 사용하면 좋을까요?
그리고 인풋 스트림 br부분에 자꾸 nullpoint가 생기는데 없애는 방법은 없을까요 ..
저 나름대로 노력은 해봤는데 잘 안되네여 ... 간단히 방법만 제시해주시면
제가 열심히 해볼깨요 감사 합니다
import java.io.*;
import java.util.*;
import javax.comm.*;
public class SerialEcho implements Runnable, SerialPortEventListener {
static CommPortIdentifier portId;
static Enumeration portList;
BufferedReader br;
BufferedWriter bw;
String echoMsg = ;
SerialPort serialPort;
Thread readThread;
public static void main(String[] args) {
// 시스템의 모든 포트 리스트를 가져옴.
portList = CommPortIdentifier.getPortIdentifiers();
while (portList.hasMoreElements()) {
portId = (CommPortIdentifier) portList.nextElement();
// 현재 포트타입이 시리얼 포트일 경우
if (portId.getPortType() == CommPortIdentifier.PORT_SERIAL) {
if (portId.getName().equals(COM1)) { SerialEcho reader = new SerialEcho();
}
}
}
}
public SerialEcho() {
try{
serialPort = (SerialPort) portId.open(SerialEcho, 2000);
} catch (PortInUseException e) {}
try {
br = new BufferedReader(new InputStreamReader(serialPort.getInputStream()));
bw = new BufferedWriter(new OutputStreamWriter(serialPort.getOutputStream()));
} catch (IOException e) {}
try {
// 시리얼 포트에 데이터가 수신되기를 기다림.
serialPort.addEventListener(this);
} catch (TooManyListenersException e) {}
// input data가 들어오면 수신 통보
serialPort.notifyOnDataAvailable(true);
try{
serialPort.setSerialPortParams(115200, // Baud Rate
SerialPort.DATABITS_8, // Data Bits
SerialPort.STOPBITS_1, // Stop Bits
SerialPort.PARITY_NONE); // Parity
} catch (UnsupportedCommOperationException e) {}
readThread = new Thread(this);
readThread.start();
}
public void run() {
try {
Thread.sleep(20000);
} catch (InterruptedException e) {}
}
public void serialEvent(SerialPortEvent event) {
switch(event.getEventType()) {
case SerialPortEvent.BI: // Break interrupt
case SerialPortEvent.OE: // Overrun error
&nbsbsp; case SerialPortEvent.FE: // Framing error
case SerialPortEvent.PE: // Parity error.
case SerialPortEvent.CD: // Carrier detect
case SerialPortEvent.CTS: // Clear to send
case SerialPortEvent.DSR: // Data set ready
case SerialPortEvent.RI: // Ring indicator.
case SerialPortEvent.OUTPUT_BUFFER_EMPTY:
break; // Output buffer is empty
case SerialPortEvent.DATA_AVAILABLE:
byte[] readBuffer = new byte[20];
try{
while(true){
echoMsg = br.readLine();
System.out.println(Echo: + echoMsg);
bw.write(echoMsg,0,echoMsg.length());
bw.newLine();
bw.flush();
}
}catch (IOException e) {}
break;
}
}
}
여기서 echoMsg를 다른 클래스에서 참조해서 쓸려고 합니다
어떤방법으로 하는것이 좋을가요..
그리고 스트림에서 br부분에 NullPointException 오류가 걸리는데 이상없이 잘돌아가거든여
그런데 안나오게 개선하는방법을 없을까요 나름대로 노력해서 바꾸려했는데 잘 안되네여
간단히 방법만 제시 해주시면 제가 해볼깨여 감사 합니다~
번호 | 제 목 | 글쓴이 | 날짜 |
---|---|---|---|
2696372 | %=open_main%, %=open_sub% 가 뭘까요? (9) | 행복녀 | 2025-05-29 |
2696347 | 콘솔 프로그램 질문 | 상큼한캔디 | 2025-05-28 |
2696320 | c언어 scanf 함수를 이요해 문자열 입력 받을 시 질문 있습니다. | 슬아라 | 2025-05-28 |
2696292 | 익스플로러9이상에서만 이상한 보더가 보이는데 삭제할수 있나요? | 망고 | 2025-05-28 |
2696263 | 프로그래밍 공부시작 질문 (6) | 진이 | 2025-05-28 |
2696206 | SK2의 플래시를 밴치마킹하려고하는데요.. (1) | 비내리던날 | 2025-05-27 |
2696179 | ie7에서 사라지지가 않네요. (2) | 빛길 | 2025-05-27 |
2696150 | div에 스크롤 생기게 하려면... (2) | 에드가 | 2025-05-27 |
2696123 | 자료구조론 공부중인데 | 김자영 | 2025-05-26 |
2696094 | exe 파일 | 제철 | 2025-05-26 |
2696043 | 제이쿼리 .scroll() 관련 질문드립니다 | 이거이름임 | 2025-05-26 |
2695984 | 마크업상으로 하단에 있으나 우선적으로 이미지파일을 다운로드받는 방법 (1) | 들꿈 | 2025-05-25 |
2695934 | tr 속성값 (9) | 새 | 2025-05-25 |
2695905 | ASP로 개발됐을 때 css가 달라져요 ㅠㅠ (4) | 슬아라 | 2025-05-24 |
2695878 | form을 이용한 다른 페이지로 넘기는 방법을 알려주세요 (1) | 핫파랑 | 2025-05-24 |
2695844 | 저기 암호화 및 복호화 프로그램.. 만들어볼려는대 (2) | 한빛 | 2025-05-24 |
2695814 | [질문] PDA에서 애플릿이 가능한가요? (1) | 봄시내 | 2025-05-24 |
2695785 | 웹 설정 도와줄분 | 화이트캣 | 2025-05-23 |
2695730 | 갑자기 기억이 안나는데 accesskey 속성.. | 빛나라 | 2025-05-23 |
2695702 | [질문] Java 버전 차이에 의한 오류?!! (2) | 검사 | 2025-05-23 |