android实现ftp上传文件
时间: 2023-09-03 17:13:39 浏览: 161
在Android中实现FTP上传文件可以使用Apache Commons Net库。以下是一个简单的示例代码:
首先,确保在你的项目中添加了Apache Commons Net库的依赖。可以在build.gradle文件中添加以下代码:
```groovy
implementation 'commons-net:commons-net:3.8.0'
```
然后,可以使用以下代码实现FTP上传文件的功能:
```java
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 FTP_SERVER = "ftp.example.com";
private static final int FTP_PORT = 21;
private static final String FTP_USER = "username";
private static final String FTP_PASSWORD = "password";
public static void uploadFile(File file, String remoteFilePath) {
FTPClient ftpClient = new FTPClient();
try {
ftpClient.connect(FTP_SERVER, FTP_PORT);
ftpClient.login(FTP_USER, FTP_PASSWORD);
ftpClient.enterLocalPassiveMode();
ftpClient.setFileType(FTP.BINARY_FILE_TYPE);
FileInputStream inputStream = new FileInputStream(file);
ftpClient.storeFile(remoteFilePath, inputStream);
inputStream.close();
ftpClient.logout();
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
ftpClient.disconnect();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
```
在上面的代码中,你需要将FTP_SERVER、FTP_PORT、FTP_USER和FTP_PASSWORD替换为你的FTP服务器的相关信息。
使用这个类的示例代码如下所示:
```java
File fileToUpload = new File("/path/to/local/file");
String remoteFilePath = "/path/to/remote/file";
FTPUploader.uploadFile(fileToUpload, remoteFilePath);
```
这将上传本地文件到FTP服务器指定的路径。确保你的设备具有访问互联网的权限并且可以连接到FTP服务器。
阅读全文