java怎么批量上传文件到服务器

avatar
作者
筋斗云
阅读量:1

要批量上传文件到服务器,可以使用Java中的FTP客户端库来实现。以下是一个使用Apache Commons Net库的示例代码:

import org.apache.commons.net.ftp.FTP; import org.apache.commons.net.ftp.FTPClient;  import java.io.File; import java.io.FileInputStream; import java.io.IOException;  public class FTPUploader {     private static final String SERVER = "ftp.example.com";     private static final int PORT = 21;     private static final String USERNAME = "username";     private static final String PASSWORD = "password";      public static void main(String[] args) {         FTPClient ftpClient = new FTPClient();         try {             ftpClient.connect(SERVER, PORT);             ftpClient.login(USERNAME, PASSWORD);              ftpClient.setFileType(FTP.BINARY_FILE_TYPE);             ftpClient.enterLocalPassiveMode();              File directory = new File("path/to/directory");             File[] files = directory.listFiles();              if (files != null) {                 for (File file : files) {                     if (file.isFile()) {                         String remoteFile = file.getName();                         FileInputStream inputStream = new FileInputStream(file);                          ftpClient.storeFile(remoteFile, inputStream);                         inputStream.close();                          System.out.println("Uploaded file: " + remoteFile);                     }                 }             }              ftpClient.logout();         } catch (IOException e) {             e.printStackTrace();         } finally {             try {                 ftpClient.disconnect();             } catch (IOException e) {                 e.printStackTrace();             }         }     } } 

在代码中,需要替换以下变量的值:

  • SERVER:FTP服务器地址
  • PORT:FTP服务器端口号
  • USERNAME:FTP登录用户名
  • PASSWORD:FTP登录密码
  • "path/to/directory":要上传的文件所在的本地目录路径

代码首先创建一个FTPClient实例,并使用connect方法连接到FTP服务器。然后使用login方法进行登录。接下来,设置文件传输类型为二进制,并进入本地被动模式。然后,通过listFiles方法获取本地目录中的文件列表。对于每个文件,使用storeFile方法将文件上传到服务器,并使用close方法关闭文件流。最后,使用logout方法登出并断开与服务器的连接。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!