我有一个可以在 Ftp 服务器中下载特定文件的工作应用程序。我有我要下载的文件名,所以我只是连接和使用: ftp.retrieveFile(filename, fileInputStream);
所以现在我们不得不改变 ftp 服务器,我认为这个新的 ftp 服务器在 linux 下运行(旧的是 windows)。现在我无法下载名称包含 ISO-8859-1 字符串的文件,例如 ç ã á ó õ。我尝试在 FTPClient 的构造函数之后使用 ftpClient.setControlEncoding("ISO-8859-1") ,但它没有用。当调用 retrevieFile 时,它返回 false,因为它找不到文件。但它适用于没有这些字符串的文件名。
我正在从另一个文件中读取文件名......我犯了一个错误,我读到文件名为 ISO_8859-1(但它在文件中被编码为 UTF-8),然后尝试 retrevieFile 并且它使用奇怪名称中的字符。怎么了??
编辑:
这是来自服务器的答案:
SYST 215 UNIX 类型:L8
FEAT 211-特点:EPRT EPSV MDTM PASV REST STREAM SIZE TVFS 211 End