package ftp;
import sun.net.ftp.*;
import sun.net.*;
import java.io.*;
public class MyFtp {
public static void main(String[] args) {
String ftpIP = "127.0.0.1";
String userName = "user";
String password = "password";
System.out.println("----------------------------------------");
System.out.println("----------Nice to meet you!-------------");
try {
String str;
FtpClient ftp = new FtpClient(ftpIP);
ftp.login(userName, password);
str = ftp.getResponseString();
System.out.println(str);
upload(ftp);
printFileList(ftp);
download(ftp);
} catch (Exception e) {
e.printStackTrace();
}
}
private static void printFileList(FtpClient ftp) throws IOException {
byte[] bt;
String str;
TelnetInputStream in = ftp.list();
str = ftp.getResponseString();
System.out.println(str);
ftp.binary();
bt = new byte[in.available()];
in.read(bt);
str = new String(bt);
System.out.println("The file list:");
System.out.println(str);
}
private static void upload(FtpClient ftp) throws IOException,
FileNotFoundException {
TelnetOutputStream putfile;
System.out.println("please input the name of file you want to upload:");
InputStreamReader isr = new InputStreamReader(System.in);
BufferedReader br = new BufferedReader(isr);
String filename = br.readLine();
putfile = ftp.put(filename);
BufferedReader fis = new BufferedReader(new FileReader(filename));
BufferedWriter fos = new BufferedWriter(new OutputStreamWriter(
putfile));
while (true) {
String i = fis.readLine();
if (i == null)
break;
else {
fos.write(i);
fos.flush();
fos.newLine();
}
}
putfile.close();
fis.close();
fos.close();
System.out.println("file upload success!");
}
private static void download(FtpClient ftp) throws IOException {
TelnetInputStream getfile;
String str;
System.out.println("Please input the name of the file you want to download:");
InputStreamReader isr = new InputStreamReader(System.in);
BufferedReader br = new BufferedReader(isr);
String filename = br.readLine();
getfile = ftp.get(filename);
str = ftp.getResponseString();
System.out.println(str);
//ftp.ascii();
ftp.binary();
str = ftp.getResponseString();
System.out.println(str);
InputStreamReader isrFile = new InputStreamReader(getfile);
BufferedReader b = new BufferedReader(isrFile);
//BufferedWriter writer = new BufferedWriter(b);
BufferedWriter writer = new BufferedWriter(new FileWriter(new File(filename)));
// writer = new BufferedWriter(new FileWriter(new File(
//"test.txt")));
while (true) {
String s = b.readLine();
if (s == null)
break;
else
writer.write(s);
writer.flush();
writer.newLine();
}
writer.close();
isrFile.close();
b.close();
getfile.close();
System.out.println("file download success!");
}
}
在结尾我得说一句:
为了测试 得自己下载个软件把自己作为Ftp服务器
要是联网了呢 就通过ipconfig查看自己的IP 那个就是FTP地址啦
如果没有联网 那么ftp地址就是127.0.01
分享到:
相关推荐
Java 实现 FTP 自动上传文件是一项常见的任务,尤其在自动化部署、数据同步或者日志传输等场景中。本文将深入探讨如何使用Java编程语言来构建一个FTP文件上传系统,同时结合Log4j日志框架和命令行信息的处理。 首先...
通过本文的详细介绍,我们可以了解到使用Java实现FTP批量大文件上传下载的关键技术和实现细节。借助于合适的Java FTP客户端库,结合Applet与Web页面的交互设计,能够有效地解决大规模工程项目的文件传输问题,同时...
Java作为多平台支持的编程语言,提供了丰富的库和API来实现FTP功能,使得开发者能够轻松地进行文件的上传和下载操作。本文将详细介绍如何使用Java实现调用FTP进行上传和下载文件。 首先,我们需要引入一个Java的FTP...
8. **实例代码**: 提供的压缩包中可能包含几个示例,展示了不同场景下的FTP上传,例如上传单个文件、批量文件或者特定类型的文件(如图片)。这些实例可以帮助开发者更好地理解和应用FTP上传功能。 9. **多线程上传...
java ftp上传进行文件的读取和上传 上传单个文件的文件流 创建远程服务器目录 删除指定文件 上传单个文件 获取指定ftp目录下文件名
这个库提供了一系列的FTPClient类,可以方便地处理FTP连接、文件上传下载等操作。在项目中,你需要通过Maven或Gradle将其添加为依赖。 ```xml <!-- Maven --> <groupId>commons-net</groupId> <artifactId>...
我们可以使用 uploadFile 方法来上传单个文件,该方法将文件上传到 FTP 服务器的指定目录下。 在 uploadFile 方法中,我们首先连接 FTP 服务器,然后将文件上传到 FTP 服务器的指定目录下。在上传文件时,我们需要...
根据给定文件的信息,本文将详细介绍如何利用Java代码来实现从FTP服务器下载文件的过程,并对代码中的关键步骤进行深入解析。 ### Java下载FTP文件 在实际应用开发中,经常需要与FTP服务器进行交互,比如上传文件...
在JAVA中实现FTP命令主要是通过使用Java的Socket编程和相关类库,如java.net.Socket和java.net.ServerSocket等。下面将详细介绍如何使用JAVA实现FTP命令以及相关知识点。 1. **FTP命令处理** FTP命令分为控制命令...
此部分代码演示了如何从FTP服务器下载单个文件到本地计算机: ```java void getButton_actionPerformed(ActionEvent e) { String server = serverEdit.getText(); String user = userEdit.getText(); String ...
在Java中,我们可以使用`java.net.Socket`进行低级的FTP连接,但通常我们会选择使用第三方库如Apache Commons Net或JSch等,它们提供了更高级别的API,简化了FTP文件上传、下载和管理任务。FTPUtils可能包含的方法有...
4. **文件上传与下载**:`upload()`和`download()`方法分别用于文件上传和下载,支持单个文件和批量文件操作。`resumeUpload()`和`resumeDownload()`可实现断点续传。 5. **文件重命名和删除**:`rename()`方法用于...
Java实现FTP文件与文件夹的上传和下载是网络编程中常见的任务,特别是在处理服务器间的数据交换时。FTP(文件传输协议)提供了一种标准的方法来传输文件,而Java中的Apache Commons Net库则提供了方便的API来实现这...
总的来说,这款“FTP连续上传下载工具”是一个实用的解决方案,通过JAVA和BAT脚本的结合,提供了高效且用户友好的文件传输体验。正确配置和使用这个工具,可以帮助用户轻松应对各种复杂的FTP文件传输需求。
在本文中,我们将深入探讨FTP的基本概念、如何配置FTP服务器、FTP上传下载的实现方式,以及批量处理的相关技巧。 FTP协议是基于TCP/IP协议族的,通过FTP,用户可以将本地计算机上的文件传输到远程服务器,或者从...
这可以通过集成JFileChooser来实现,这是一个标准的文件选择对话框,用户可以选择单个文件或整个目录。当用户点击“选择”按钮时,系统将触发一个事件,开发者需要编写事件处理器以获取所选文件或目录的路径。 批量...
FTP上传大附件的关键在于正确设置和管理数据传输,因为大文件可能会超过单个TCP连接的最大传输限制。以下是一些重要的知识点: 1. **断点续传**:当上传大文件时,可能会遇到网络中断或服务器故障。FTP支持断点续传...
在提供的文件列表中,有两份MHT文件,可能包含了使用Java实现FTP上传下载的示例代码或问题解答。MHT文件是一种单个文件的Web页面存档格式,可以使用浏览器或特定的阅读器打开查看详细内容。 总的来说,FTP上传与...
- 批量上传/下载:除了单个文件操作,FTP客户端还支持一次性上传或下载整个目录,大大提高了工作效率。 3. FTP协议的两种工作模式: - 主动模式(Active Mode):服务器主动连接到客户端的数据端口来传输数据。这...