Login | Register   
LinkedIn
Google+
Twitter
RSS Feed
Download our iPhone app
TODAY'S HEADLINES  |   ARTICLE ARCHIVE  |   FORUMS  |   TIP BANK
Browse DevX
Sign up for e-mail newsletters from DevX


Tip of the Day
Language: Java
Expertise: Intermediate
Jun 21, 1999

Retrieve a List of Available Serial Ports

Here's a nice little function that retrieves a list of the available serial ports on your system. Note that this function uses Java's Communications API, also known as javax.comm, which must be installed before the code will compile or run. Although this function shows how easy it is to use the Java Communications API, it also reveals that the API is not quite as smart as you might expect. For example, my laptop has three COM ports--COM1, COM2, and COM4--but this code returns a vector containing the names COM1, COM2, COM3, and COM4. The COM3 is a phantom port name that will throw a NoSuchPortException if passed to CommPortIdentifier.getPortIdentifier. The moral of the story? Write once, test everywhere. By the way, you can alter this function to return a list of available parallel ports simply by changing "PORT_SERIAL" to "PORT_PARALLEL".

 
	/**
	Returns a vector where each element of the vector is a string
	containing the name of a serial port in the system.
	*/
	private Vector getSerialPortNames()
	{
		CommPortIdentifier portId;
		Enumeration en = CommPortIdentifier.getPortIdentifiers();
		Vector listData = new Vector(8);

		// Walk through the list of port identifiers and, if it
		// is a serial port, add its name to the list.
		while (en.hasMoreElements())
		{
			portId = (CommPortIdentifier) en.nextElement();
			if (portId.getPortType() == CommPortIdentifier.PORT_SERIAL)
			{
				listData.addElement(portId.getName());
			}
		}

		return listData;
	}
Trevor Harmon
 
Comment and Contribute

 

 

 

 

 


(Maximum characters: 1200). You have 1200 characters left.

 

 

Sitemap
Thanks for your registration, follow us on our social networks to keep up-to-date