Java FTP загрузить пустой файл - PullRequest
0 голосов
/ 04 июня 2018

Я пытаюсь загрузить на свой сервер простой текстовый файл ~ 120b

Я вижу, как программа входит в мой сервер и создает файл - но не будет копировать данные внутри

он просто создает пустой текстовый файл (также код очищает старые данные и записывает новые данные в файл - но я не думаю, что это проблема), что я пропускаю \ делаю неправильно?

long upload = TimeBetweenDates(SendTime,Time);

            if (upload > 10)

            {
                String udp = String.join("!",
                date,
                time,
                status,
                final,
                );

             //   SendUDP(udp);

                output.append ( udp );

                UploadFTP();

               output.close();


                //this part for clearing the data in the file
                PrintWriter writer = new PrintWriter(PathOfFile);
                writer.print("");
                writer.close();

                SendTime = Calendar.getInstance();
            }

  public static void UploadFTP ()
    {
        String ftpUrl = "ftp://%s:%s@%s/%s";
        String host = "10.0.0.1";
        String user = "FTP";
        String pass = "FTP";
        String filePath="/home/pi/SendData.log";
        String uploadPath = "/car.txt";

        ftpUrl = String.format(ftpUrl,user,pass,host,uploadPath);
        System.out.println("Upload URL:  " + ftpUrl);
        try
        {
            URL url = new URL(ftpUrl);
            URLConnection conn = url.openConnection();
            OutputStream outputStream = conn.getOutputStream();
            FileInputStream inputStream = new FileInputStream(filePath);

            byte[] buffer = new byte [4096];
            int bytesRead = -1;
            while ((bytesRead = inputStream.read(buffer)) != -1)
            {
                outputStream.write(buffer,0,bytesRead);
            }

            inputStream.close();
            outputStream.close();
            System.out.println("File Upload Finish!");
        }


        catch (IOException ex)
        {
            ex.printStackTrace();
        }



        }
  • Я не получаю никакой ошибки во время выполнения кода
  • Если я отлаживаю его, я вижу, что файл равен 123b до очистки и 0b после (так что код в порядке)
...