通过串口上传文件

时间:2011-08-23 11:31:15

标签: java file-upload rxtx

有没有办法通过串口上传文件到嵌入式设备?我使用RXTX,但我只是从文件发送数据,而不是上传此文件。谢谢你的建议。

public static void main(String[] args) throws PortInUseException, UnsupportedCommOperationException
{
    java.util.Enumeration<CommPortIdentifier> portEnum = CommPortIdentifier.getPortIdentifiers();
    while (portEnum.hasMoreElements())
    {
        CommPortIdentifier portIdentifier = portEnum.nextElement();
        if (portIdentifier.getPortType() == CommPortIdentifier.PORT_SERIAL)
        {
            if (portIdentifier.isCurrentlyOwned())
            {
                System.out.println("Port is curently used");
                System.exit(0);
            }
            else
            {
                CommPort commPort = portIdentifier.open("Zkouska", 2000);
                if (commPort instanceof SerialPort)
                {
                    SerialPort serialPort = (SerialPort) commPort;
                    serialPort.setSerialPortParams(57600, SerialPort.DATABITS_8, SerialPort.STOPBITS_1, SerialPort.PARITY_NONE);
                    try
                    {
                        OutputStream out = serialPort.getOutputStream();
                        File file = new File("C:/data/java/RXTX/01_Hello/SerialUploader/uploaddemo.dat");
                        byte[] content = new byte[(int)file.length()];
                        FileInputStream fin = new FileInputStream(file);
                        fin.read(content);
                        out.write(content);
                        out.flush();
                        out.close();
                        commPort.close();
                        System.out.println("Tady");
                    }
                    catch (IOException e)
                    {
                        e.printStackTrace();
                    }
                }
            }
        }
    }
}

1 个答案:

答案 0 :(得分:2)

您应该使用像

这样的文件传输协议进行上传

在这里查看java中的初学者:Implementation of X-modem protocol in Java