49,936
社区成员




public void serialEvent(SerialPortEvent event) {
//定义用于缓存读入数据的数组
byte[] cache = new byte[1024];
//记录已经到达串口COM2且未被读取的数据的字节(Byte)数。
int availableBytes = 0;
//如果是数据可用的时间发送,则进行数据的读写
if(event.getEventType() == SerialPortEvent.DATA_AVAILABLE){
try {
availableBytes = inputStream.available();
while(availableBytes > 0){
inputStream.read(cache);
for(int i = 0; i < cache.length && i < availableBytes; i++){
//解码并输出数据
System.out.print((char)cache[i]);
// int m1=cache[i];
// System.out.print(m1);
Part part=new Part(cache[i]);//数据库写入
Connection con=null;
try{
con=db_util.getCon();
PartDao.add(con, part);
}finally{
try {
db_util.closeCon(con);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
availableBytes = inputStream.available();
}
}
}
catch (IOException e) {
e.printStackTrace();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}