使用ftp4这个jar包来连接FTP时,有时会报it.sauronsoftware.ftp4j.FTPListParseException这个异常,究其原因:
The FTP protocol doesn't offer a wide supported method to get complete informations about the contents of the working directory. The LIST command usually gives all you need to know, but unfortunately every server can use a different style for the response. It means that some servers return a UNIX style directory listing, some servers prefer the DOS style, others use some alternative ones.
解决办法:
1 设置FTP服务器的选项。
UNIX style and variants (i.e. MAC style)
DOS style
NetWare styles
EPLF
MLSD
2 使用 listNames()代替list()放过。
3 使用list(String str)这个方法进行过滤。
这三个方法中第一个最好,但是有时候FTP服务器不是你能控制到的,所以可以选择第二个。第三个呢,因为有过滤功能,除非你知道你想要的是什么,否则你加了过滤条件后就会减少你获得的信息。主张用第二个方法。