Protocole FTP, communes jakarta net, problème codant pour nom de fichier
-
28-09-2019 - |
Question
J'ai une application de travail qui télécharge un fichier spécifique dans le Ftp Server. J'ai le nom que je veux télécharger, donc je viens de connecter et d'utiliser: ftp.retrieveFile (filename, FileInputStream);
Alors maintenant, nous avons dû changer le serveur ftp, et ce nouveau serveur ftp je pense que fonctionne sous linux (l'ancien était fenêtres). Maintenant, je ne peux pas télécharger des fichiers avec le nom qui contient des chaînes ISO-8859-1, comme á ã ç õ ó. J'ai essayé d'utiliser ftpClient.setControlEncoding ( « ISO-8859-1 ») juste après le constructeur du ClientFTP mais il didnt travail. quand retrevieFile est appelé il retourne faux, car il ne parvient pas à trouver le fichier. Mais il fonctionne très bien avec les noms de fichiers sans ces chaînes.
Je suis en train de lire le nom d'un autre fichier ... J'ai fait une erreur une fois, que je lis, le nom de fichier comme ISO_8859-1 (mais il a été codé en UTF-8 dans le fichier), puis tryed à retrevieFile et cela a fonctionné avec des personnages étranges dans le nom. Ce qui se passe ??
EDIT:
Ce sont des réponses du serveur:
SYST 215 UNIX Type: L8
FEAT 211 Caractéristiques: EPRT EPSV MDTM PASV REST STREAM TAILLE TVFS 211 Fin
La solution
OK Cela a été résolu. J'ai réalisé que gftp a télécharger les fichiers avec un mauvais encodage dans le nom. Il utilisait UTF8