Filename encoding in Apache Commons Net FTPClient

gefei picture gefei · Mar 2, 2012 · Viewed 11.4k times · Source

I have to upload a file to an FTP server. The filename contains special letters, say äöü. On the FTP server, I need the filename to be UTF-8 encoded.

My code is like this:

import org.apache.commons.net.ftp.FTPClient;

FTPClient client = new FTPClient();

...

boolean retval = client.storeFile(fileName, inputStream);

The problem is that after storeFile, the name of the file saved on the FTP server is ISO-8859-1 encoded rather than UTF-8.

How can I tell FTPClient to UTF-8 encode the file names?

Answer

logoff picture logoff · Mar 27, 2012

I have not tested it, but you can try this:

client.setControlEncoding("UTF-8");