g.drawString("扫描本地计算机上的串口:!",10,10);
java.util.List ports = listPorts();
if(ports.size()==0){
g.drawString("本地计算机上没有发现串口:!",10,30);
}else{
int y = 50;
g.drawString("本地计算机上发现"ports.size()"个串口:!",10,30);
for (int i = 0; i < ports.size(); i) {
String port = (String) ports.get(i);
g.drawString(port,10,y);
y = 20;
}
}
}
private java.util.List listPorts(){
java.util.List ports = new java.util.ArrayList();
Enumeration en = CommPortIdentifier.getPortIdentifiers();
CommPortIdentifier portId;
while (en.hasMoreElements()) {
portId = (CommPortIdentifier) en.nextElement();
if (portId.getPortType() == CommPortIdentifier.PORT_SERIAL){
ports.add(portId.getName());
}
}
return ports;
}
}
--------------------------------------LocalFileApplet.java--------------------------------------------------------
这个类中,有两个测试方法:listPorts和showPorts,是用来扫描本地计算机上的串口的,本项目中并没有使用到它们。本类中,得注意的地方有2个:在static代码段中,System.setSecurityManager(null);使得经过数字签名的applet能够顺利访问本地资源,CommDriver driver = (CommDriver) Class.forName(drivername).newInstance();通过手工方式加载串口驱动,免去了去客户端加载驱动配置文件javax.comm.properties可能会引起的路径问题。
JobThread.java代码:
--------------------------------JobThread.Java------------------------------------------------------------
import java.io.InputStream;
import java.io.IOException;
/**
* User: yrw
* Date: 2006-8-17
* Time: 15:12:42
*/
public class JobThread implements Runnable{
private LocalFileApplet applet;
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-36137-5.html