当我试图用com端口列表填充枚举时,枚举为空



我有一个设备连接在我的com端口,我试图得到它的值,但我被困在第一步。

我无法获得现有的com端口。在下面的代码中,由于程序根本没有进入while循环,因此by enumeration似乎为空。有谁能帮帮忙吗?

public class connectnow implements Runnable, SerialPortEventListener {
    static CommPortIdentifier portId;
    static Enumeration portList;
    InputStream inputStream;
    SerialPort serialPort;
    Thread readThread;
    byte[] readBuffer;
    public static void main(String[] args) {
        portList = CommPortIdentifier.getPortIdentifiers();
        System.out.println("portList... " + portList);
        while (portList.hasMoreElements()) {
            System.out.println("yes");
        }
    }

这似乎对我有用。

我必须从http://mfizz.com/oss/rxtx-for-java安装x64版本的RXTX。软件包是gnu。IO(这就是您看到导入的原因)。你可能得做点别的。

注意getPortIdentifiers()的返回需要一些时间。给点时间。

import gnu.io.*;
import java.util.Enumeration;
import java.io.InputStream;
public class connectnow implements Runnable, SerialPortEventListener {
    static CommPortIdentifier portId;
    static Enumeration portList;
    InputStream inputStream;
    SerialPort serialPort;
    Thread readThread;
    byte[] readBuffer;
    public static void main(String[] args) {
        portList = CommPortIdentifier.getPortIdentifiers();
        System.out.println("portList=" + portList);
        while (portList.hasMoreElements()) {
            System.out.println("yes");
            CommPortIdentifier portId = (CommPortIdentifier)portList.nextElement();
            System.out.println("portId=" + portId);
        }
    }
    public void run() {
    }
    public void serialEvent(SerialPortEvent ev) {
    }
}

相关内容

  • 没有找到相关文章

最新更新