# aj-ftp
**Repository Path**: lightweight-components/aj-ftp
## Basic Information
- **Project Name**: aj-ftp
- **Description**: 小型的 Java FTP 客户端
- **Primary Language**: Unknown
- **License**: Apache-2.0
- **Default Branch**: main
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2026-08-04
- **Last Updated**: 2026-08-05
## Categories & Tags
**Categories**: Uncategorized
**Tags**: FTP, ftp-client, java-ftp
## README
aj-ftp
一个轻量级 Java FTP 客户端
[](https://central.sonatype.com/artifact/com.ajaxjs/aj-ftp)

[](https://javadoc.io/doc/com.ajaxjs/ajaxjs-ftp )

[](http://www.apache.org/licenses/LICENSE-2.0.txt)


[](https://deepwiki.com/lightweight-component/aj-ftp)
[](mailto:frank@ajaxjs.com)
[](./README.zh-CN.md)
**aj-ftp** 是一个简单、轻量级的 Java FTP 客户端组件,主要用于实现文件的上传和下载功能。
## 核心特性
* **简单轻量**:易于使用,无依赖。
* **兼容性好**:基于 JDK 的 `sun.*` 扩展包实现。当运行环境(如 Android)不支持 `sun.*` 包时,此组件可以作为替代方案。
* **支持进度追踪**:内置了监控文件上传和下载进度的功能。
## 🚀 快速开始
### 安装
在 Maven 项目中,通过添加以下依赖来引入该库:
```xml
com.ajaxjs
aj-ftp
1.2
```
### 使用示例
以下代码展示了如何使用`aj-ftp`连接到一个公共的 FTP 服务器进行文件上传和下载。
```java
import com.ajaxjs.net.ftp.UploadFtp;
import java.io.IOException;
public class TestFTP {
// 测试文件上传
public void testUpload() throws IOException {
// 连接到服务器
UploadFtp client = new UploadFtp("speedtest.tele2.net", 21);
// 使用匿名登录
client.login("anonymous", "anonymous");
// 上传文件 (本地路径, 服务器目标路径)
client.upload("c:\\temp\\re.zip", "/upload/re.zip");
// 关闭连接
client.closeServer();
}
// 测试文件下载
public void testDownload() throws IOException {
// 连接到服务器
UploadFtp ftp = new UploadFtp("speedtest.tele2.net", 21);
// 使用匿名登录
ftp.login("anonymous", "anonymous");
// 下载文件 (服务器源路径, 本地目标路径)
ftp.getFile("/1KB.zip", "c:\\temp\\re.zip");
}
}
```
## 🔗 相关资源
* **源代码仓库**: [GitHub](https://github.com/lightweight-component/aj-ftp) | [Gitcode](https://gitcode.com/lightweight-component/aj-ftp)
* **中文教程**: [CSDN 博客](https://blog.csdn.net/zhangxin09/article/details/134222511)
* **API 文档**: [Javadoc](https://javadoc.io/doc/com.ajaxjs/ajaxjs-ftp)