Pregunta

Tengo una aplicación de trabajo que se descarga un archivo específico en servidor FTP. Tengo el nombre del archivo que desea descargar, así que sólo estaba Conexión y uso de: ftp.retrieveFile (nombre de archivo, FileInputStream);

Así que ahora hemos tenido que cambiar el servidor ftp, y este nuevo servidor ftp uno creo que funciona bajo Linux (la anterior era ventanas). Ahora no puedo descargar los archivos con nombre que contiene la norma ISO-8859-1 cadenas, como c a a o o. He probado a utilizar ftpClient.setControlEncoding ( "ISO-8859-1") justo después del constructor de la FtpClient pero Dejase't trabajo. cuando retrevieFile se llama devuelve falso, ya que no puede encontrar el archivo. Pero está trabajando muy bien con los nombres de archivo sin esas cadenas.

Estoy leyendo el nombre del archivo desde otro archivo ... He cometido un error una vez, que he leído, el nombre de archivo como ISO_8859-1 (pero fue codificado como UTF-8 en el archivo) y luego probado a lo retrevieFile y funcionó con caracteres extraños en el nombre. Lo que está pasando ??

EDIT:

Estos son respuestas del servidor:

SIST 215 UNIX Tipo: L8

FEAT 211-Características:  EPRT  EPSV  MDTM  PASV  RESTO STREAM  TALLA  TVF 211 Fin

¿Fue útil?

Solución

OK Esto se resolvió. Me di cuenta de que se gftp cargar los archivos con la codificación incorrecta en el nombre. Se estaba utilizando UTF8

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top