Java读取串口字符串【判断字符串长度】

Java Serial port string read [Determine string length]

我正在从 com 端口读取变量字符串。字符串的最大长度为 24。如果我读取的字符串低于该长度,例如它读取 10 长度的字符串,但每当我测量长度时它总是给出 24。如果它低于最大长度,如何删除额外的空格。

        serialPort.openPort();//Open serial port
        serialPort.setParams(9600, 8, 1, 0);//Set params.
        byte[] buffer = serialPort.readBytes(24);//Read 10 bytes from serial port
        String str = new String(buffer);
        int t= str.length();
        System.out.println(t);

使用 trim() 方法删除前导和尾随空格。

str=str.trim();

如果 buffer 是 24 字节长,那就是接收到的数据量。不是 10。如果你想要十个字节:

byte[] buffer = serialPort.readBytes(10);