?? smsreturneventlistener.java
字號:
package sms;
import gnu.io.SerialPortEvent;
import gnu.io.SerialPortEventListener;
import java.io.IOException;
import java.io.InputStream;
/*
* 短信發送AT指令可能有返回值,本事件監聽器專門監聽返回值
* 但是由于本CDMA正常工作時沒有返回值,僅在出現狀態錯誤的時候出現,因此本監聽器可以看做是用來
* 捕獲系統錯誤的類
*/
public class SMSReturnEventListener implements SerialPortEventListener {
private InputStream inputStream;
@Override
public void serialEvent(SerialPortEvent event) {
/*now I don't want to insert some programme into this block ,because
* I can't be sure that the super block would work well
*/
InputStream inputStream=null;
switch (event.getEventType()) {
case SerialPortEvent.BI:
case SerialPortEvent.OE:
case SerialPortEvent.FE:
case SerialPortEvent.PE:
case SerialPortEvent.CD:
case SerialPortEvent.CTS:
case SerialPortEvent.DSR:
case SerialPortEvent.RI:
case SerialPortEvent.OUTPUT_BUFFER_EMPTY:
break;
case SerialPortEvent.DATA_AVAILABLE://當有可用數據時讀取數據,并且給串口返回數據
{System.out.println("得到了一些返回值");
byte[] readBuffer = new byte[1024];
try {
while (inputStream.available() > 0) {//下一次可以不受阻塞而讀取的字節數
int numBytes = inputStream.read(readBuffer);//從輸入流中讀取一定數量的字節,并將其存儲在緩沖區數組readBuffer中。以整數形式返回實際讀取的字節數。
}
// System.out.println(numBytes);//
} catch (IOException e){
}finally{
try {
inputStream.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}}
break;
}
}
public void setInputStream(InputStream inputStream){
this.inputStream=inputStream;
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -