FTPClient 所在包 commons-net-3.6.jar
判断代码如下:
import java.io.IOException;
import org.apache.commons.net.ftp.FTPClient;
import org.apache.commons.net.ftp.FTPReply;
import org.junit.Before;
import org.junit.Test;
/**
* FTPClient测试
*
* @author orangec
*
*/
public class FTPClientTest {
private static String url = "127.0.0.1";
private static int port = 21;
private static String uname = "admin";
private static String upass = "123456";
private FTPClient client;
/**
* 初始化客户端
*
* @throws IOException
*/
@Before
public void initClient() throws IOException {
client = new FTPClient();
client.connect(url, port);
client.login(uname, upass);
int reply = client.getReplyCode();
if (!FTPReply.isPositiveCompletion(reply)) {
client.disconnect();
}
// 使用被动模式
client.enterLocalPassiveMode();
}
/**
* 判断文件是否存在
*
* @throws IOException
*/
@Test
public void checkFileExists() throws IOException {
boolean connected = client.isConnected();
if (!connected) {
System.out.println("客户端未连接成功!");
}
// 进入当前用户根目录,方便listNames方法从用户根路径查找文件
client.changeWorkingDirectory("/");
// 文件再当前用户下的全路径
String path = "demo/pdf/demo.jpeg";
// 当前文件存在时,会返回文件路径
String[] listNames = client.listNames(path);
boolean existsFlag = listNames.length > 0;
System.out.println(existsFlag ? "文件存在" : "文件不存在");
}
}
以上代码如果存在问题,欢迎留言。