使用JAVA程序操作FTP服务器
注:
- 一切操作都会在Linux下进行
- 端口可能会被拒绝,教程中默认关闭防火墙,需要开防火墙请添加端口规则
开始之前需要做2件事:
- 1、模拟一个FTP服务器 。
http://blog.csdn.net/gfd54gd5f46/article/details/53932028#t1
- 2、引用JAR包进行编译。
本教程同样要使用Jar包,如果不会使用,请先阅读:
如何使用jar包 :http://blog.csdn.net/gfd54gd5f46/article/details/54578347
1、 JAVA程序查看ftp下的所有文件夹(局域网)
首先创建一个FtpDemo.java的文件
vi FtpDemo.java
- 源码:
import java.io.IOException;
import java.net.SocketException;
import org.apache.commons.net.ftp.FTPClient;
import org.apache.commons.net.ftp.FTPFile;
import java.nio.charset.Charset;
import java.io.*;
public class FtpDemo{
/*
获取FTP服务器上所有的目录
*/
public static void conn(){
//初始化FTP客服端
FTPClient ftp = new FTPClient();
try{
//通过IP跟端口进行连接
//192.168.20.111 是我FTP服务器的IP,你需要换成你自己的
ftp.connect("192.168.20.111",21);
//登录名,密码
ftp.login("lingdu","123");
//设置编码
ftp.setCharset(Charset.forName("UTF-8"));
ftp.setControlEncoding("UTF-8");
//获取目录列表存放在数组中
FTPFile files[] = ftp.listDirectories();
for(int i = 0; i < files.length; i++){
FTPFile file = files[i];
//获取文件名
String fileName = file.getName();
//打印文件名
System.out.println(fileName);
}
}catch(SocketException e){
e.printStackTrace();
}catch(IOException e){
e.printStackTrace();
}finally{
try{
Thread.sleep(500);
}catch(InterruptedException e1){
e1.printStackTrace();
}