Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 我想从串行通信中分离数据并将其传送到表中_Java_Database_Split_Serial Communication - Fatal编程技术网

Java 我想从串行通信中分离数据并将其传送到表中

Java 我想从串行通信中分离数据并将其传送到表中,java,database,split,serial-communication,Java,Database,Split,Serial Communication,我想用这种格式拆分串行数据 <STX> data1<FS> Data2<FS> Data3<FS> ...Data_n<FS>Checksum<ETX> 在哪里 STX是十六进制的0x02 FS是十六进制的0x1C ETX是十六进制的0x03 然后我需要将它发送到数据库表 我使用RXTX库并通过字节值获得结果 有人能帮助我并与我分享如何做到这一点吗?我用我认为丑陋的方式得到了结果,但真正的问题是我只想从数组[2]输入数据数

我想用这种格式拆分串行数据

<STX> data1<FS> Data2<FS> Data3<FS> ...Data_n<FS>Checksum<ETX>
在哪里

STX是十六进制的0x02 FS是十六进制的0x1C ETX是十六进制的0x03 然后我需要将它发送到数据库表

我使用RXTX库并通过字节值获得结果


有人能帮助我并与我分享如何做到这一点吗?

我用我认为丑陋的方式得到了结果,但真正的问题是我只想从数组[2]输入数据数组,直到长度为-2。现在我做了60个静态数组长度,但数组中的数据总是动态长度。有没有办法解决这个问题。我听说过列表数据类型,但我觉得更难

public Constructor(GUI window)
    {
        this.dump = new String[60];
        this.window = window;
    }
int i = 0; String[] dump; boolean begin = false,first=true;
        public void serialEvent(SerialPortEvent evt) {
            if (evt.getEventType() == SerialPortEvent.DATA_AVAILABLE)
            {
                try
                    {
                        byte singleData = (byte)input.read();

                       if (singleData == 2){
                           begin =true; i=0; 
                       }
                       if (singleData == 3){
                           begin = false; writeData(); 
                       }
                       if (begin == true){
                            if (singleData != 28 && singleData!=2 ){
                                if(dump[i]!=null && first==false){
                                dump[i]=dump[i]+ new String(new byte[] {singleData});                       
                                }


                                if(dump[i]==null){
                                    dump[i]=new String(new byte[] {singleData});
                                    first=false;
                                }
                            }

                            if (singleData==28){
                                    System.out.println(dump[i] + "  No." + i );
                                    first=true;
                                    i++;      
                            }
                       }

                    }
                    catch (Exception e)
                    {
                        logText = "Failed to read data. (" + e.toString() + ")";
                        window.txtLog.setForeground(Color.red);
                        window.txtLog.append(logText + "\n");
                    }
            }
        }

你已经试过什么代码了?请看,还有。你有密码吗,杜德?这是结果R No.0*No.1 SUKIMAN No.2 46/38 No.3 No.4 null No.5 No.6 363812270115 No.7 No.1 No.8 No.9 No.4 No.10 TGL No.11 197 No.12 mg/dl No.13 null No.14 ALDL No.15 179 No.16 mg/dl No.17 null No.18 URCA No.19 6.0No.20 mg/dl No.21 null No.22 GLUC No.23 179 No.24 mg/dl No.25 null No.26 87 No.27