我有一个可以在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 尺寸 TVFS 211结束
答案 0 :(得分:0)
好的,这已经解决了。 我意识到gftp正在上传名称中包含错误编码的文件。它使用的是UTF8