Mega Code Archive

 
Categories / Java Tutorial / Development
 

Port Reader

import java.io.*; import javax.comm.*; import java.util.*; public class PortReader SerialPortEventListener {   static Enumeration ports;   static CommPortIdentifier pID;   InputStream inStream;   SerialPort serPort;   public PortReader() throws Exception{     serPort = (SerialPort) pID.open("PortReader", 2000);     inStream = serPort.getInputStream();     serPort.addEventListener(this);     serPort.notifyOnDataAvailable(true);     serPort.setSerialPortParams(9600, SerialPort.DATABITS_8, SerialPort.STOPBITS_1,         SerialPort.PARITY_NONE);   }   public void serialEvent(SerialPortEvent event) {     switch (event.getEventType()) {     case SerialPortEvent.BI:       System.out.println("SerialPortEvent.BI occurred");     case SerialPortEvent.OE:       System.out.println("SerialPortEvent.OE occurred");     case SerialPortEvent.FE:       System.out.println("SerialPortEvent.FE occurred");     case SerialPortEvent.PE:       System.out.println("SerialPortEvent.PE occurred");     case SerialPortEvent.CD:       System.out.println("SerialPortEvent.CD occurred");     case SerialPortEvent.CTS:       System.out.println("SerialPortEvent.CTS occurred");     case SerialPortEvent.DSR:       System.out.println("SerialPortEvent.DSR occurred");     case SerialPortEvent.RI:       System.out.println("SerialPortEvent.RI occurred");     case SerialPortEvent.OUTPUT_BUFFER_EMPTY:       System.out.println("SerialPortEvent.OUTPUT_BUFFER_EMPTY occurred");       break;     case SerialPortEvent.DATA_AVAILABLE:       System.out.println("SerialPortEvent.DATA_AVAILABLE occurred");       byte[] readBuffer = new byte[20];       try {         while (inStream.available() > 0) {           int numBytes = inStream.read(readBuffer);         }         System.out.print(new String(readBuffer));       } catch (IOException ioe) {         System.out.println("Exception " + ioe);       }       break;     }   }   public static void main(String[] args) throws Exception{     ports = CommPortIdentifier.getPortIdentifiers();     while (ports.hasMoreElements()) {       pID = (CommPortIdentifier) ports.nextElement();       System.out.println("Port " + pID.getName());       if (pID.getPortType() == CommPortIdentifier.PORT_SERIAL) {         if (pID.getName().equals("COM1")) {           PortReader pReader = new PortReader();           System.out.println("COM1 found");         }       }     }   } }