使用 java 检查文件以 ftp 位置的名称开头
checking a file starts with a name in ftp location using java
下载文件前需要检查文件(文件名开头)是否存在:
我有一个 ftp 位置,它将生成一个文件以响应命中服务 (API)。我需要使用文件名的起始字符检查文件是否存在于 ftp 位置,因为它会在文件名末尾附加一些数据。
任何人都可以使用 java 代码和 commons.net 包
来帮助解决这个问题吗
使用FTPFileFilter
try {
String filePattern = "prefix";
FTPClient objFTPClient = new FTPClient();
//objFTPClient - set username, password, host, etc...
FTPFileFilter ftpFileFilter = new FTPFileFilter() {
@Override
public boolean accept(FTPFile ftpFile) {
return ftpFile.getName().toLowerCase().startsWith(filePattern.toLowerCase());
}
};
/* List of file that starts with your given prefix */
FTPFile[] ftpFiles = objFTPClient.listFiles(remoteDirectory, ftpFileFilter);
}catch(Exception ex){
ex.printStackTrace();
}finally{
//close connection, etc....
}
下载文件前需要检查文件(文件名开头)是否存在: 我有一个 ftp 位置,它将生成一个文件以响应命中服务 (API)。我需要使用文件名的起始字符检查文件是否存在于 ftp 位置,因为它会在文件名末尾附加一些数据。 任何人都可以使用 java 代码和 commons.net 包
来帮助解决这个问题吗使用FTPFileFilter
try {
String filePattern = "prefix";
FTPClient objFTPClient = new FTPClient();
//objFTPClient - set username, password, host, etc...
FTPFileFilter ftpFileFilter = new FTPFileFilter() {
@Override
public boolean accept(FTPFile ftpFile) {
return ftpFile.getName().toLowerCase().startsWith(filePattern.toLowerCase());
}
};
/* List of file that starts with your given prefix */
FTPFile[] ftpFiles = objFTPClient.listFiles(remoteDirectory, ftpFileFilter);
}catch(Exception ex){
ex.printStackTrace();
}finally{
//close connection, etc....
}