首页 > 代码库 > FTP-使用ftp4j操作FTP_3
FTP-使用ftp4j操作FTP_3
/**
* 获取目录下所有文件
*
* @param dir
* 目录
* @return
* @throws Exception
*/
public String[] listNames(String dir) throws Exception {
FTPClient client = null;
try {
client = getClient();
client.changeDirectory(dir);
String[] values = client.listNames();
if (values != null) {
// 将文件排序(忽略大小写)
Arrays.sort(values, new Comparator<String>(){
public int compare(String val1, String val2) {
return val1.compareToIgnoreCase(val2);
}
});
}
return values;
} catch(FTPException fe) {
// 忽略文件夹不存在的情况
String mark = "code=550";
if (fe.toString().indexOf(mark) == -1) {
throw fe;
}
} finally {
logout(client);
}
return new String[0];
}
}
五、测试
1.在项目中创建test目录
/test
2.在test目录下创建包
包名:cn.jbit.test
3.在包下创建测试类
测试类名:FtpUtilsTest.java
测试类内容:
public class FtpUtilsTest {
/**
* 测试删除文件
*/
@Test
public void test5(){
FTPUtils ftpUtils = FTPUtils.getInstance();
try {
ftpUtils.delete("456/ftp.txt");
} catch (Exception e) {
e.printStackTrace();
}
}
/**
* 测试下载文件
*/
@Test
public void test4(){
FTPUtils ftpUtils = FTPUtils.getInstance();
try {
ftpUtils.download("D:/", "456/ftp.txt");
} catch (Exception e) {
e.printStackTrace();
}
}
/**
* 测试上传文件
*/
@Test
public void test3(){
FTPUtils ftpUtils = FTPUtils.getInstance();
String dir = "456";
File file = new File("D:/eula.2052.txt");
try {
ftpUtils.upload(dir, true, file);
} catch (Exception e) {
e.printStackTrace();
}
}
/**
* 测试上传文件
*/
@Test
public void test2(){
FTPUtils ftpUtils = FTPUtils.getInstance();
String dir = "456";
File file = new File("D:/eula.2052.txt");
try {
ftpUtils.upload(dir, file);
} catch (Exception e) {
e.printStackTrace();
}
}
/**
* 根据指定目录
* 获取文件与文件夹名称
*/
@Test
public void testListNames(){
FTPUtils ftpUtils = FTPUtils.getInstance();
try {
String[] strs = ftpUtils.listNames("456");
for (String string : strs) {
System.out.println(string);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
本文出自 “素颜” 博客,请务必保留此出处http://suyanzhu.blog.51cto.com/8050189/1566325
FTP-使用ftp4j操作FTP_3