【发布时间】:2014-02-24 11:14:26
【问题描述】:
我想获取 ftp 上存在的所有文件名,扩展名为 .xls。
因此我编写了以下代码:
FTPClient ftp = new FTPClient();
FTPFile[] downloadFiles = null;
try {
ftp.connect(Ftp_Path);
ftp.login(ftpUserID, ftpPassword);
downloadFiles = ftp.listFiles();
xlsFiles = new ArrayList<String>();
for(FTPFile i : downloadFiles) {
if(i.toString().endsWith(".xls")) {
xlsFiles.add(i.toString());
}
}
} catch (Exception e) {
e.printStackTrace();
}
我已确定文件存在于 ftp 上:
但是在线出错:
downloadFiles = ftp.listFiles();
我遵循以下语法:
http://kodejava.org/how-do-i-get-list-of-files-from-ftp-server/
但出现错误:
java.lang.NullPointerException
at com.amazonaws.mws.samples.ImportRulesPropertyClass.GetFileList(ImportRulesPropertyClass.java:39)
at com.amazonaws.mws.samples.ManageReportScheduleSample.main(ManageReportScheduleSample.java:74)
【问题讨论】:
-
首先检查你的 ftp.connect(Ftp_Path); ftp.login(ftpUserID, ftpPassword); ftp 连接与否?
-
你在哪里初始化ftp?
-
@Naren 是的,它已连接,我在每个地方都保留了调试器
-
@Alexander_Winter 以上下载文件为:FTPClient ftp = new FTPClient();
-
@NaMo 它正在使用相同的代码...。代码在哪个函数中?? ImportRulesPropertyClass.GetFileList 是什么??