Вместо того, чтобы загружать файл на FTP, я бы посоветовал вам написать свой собственный сервер и клиентское программное обеспечение и попросить их общаться друг с другом, если вы хотите научиться использовать сокеты в Java.
Когда вы узнали, что вы можете прочитать RFC для ftp, который должен рассказать вам, как связаться с FTP-сервером. Вам необходимо изучить и понять протокол ftp, чтобы создать действительные пакеты с данными для отправки и для анализа данных, полученных с сервера ftp.
это обычно запросы, ответы и данные, отправляемые туда и обратно.
Filedata сама отправляется в необработанном виде, если только ftp-сервер не требует шифрования, но запросы и ответы могут быть в любой форме, двоичные значения, десятичные значения, строки и т. Д., В зависимости от протокола и типа запроса нужно знать это, чтобы установить действительный канал связи.
Я сам не знаю протокол ftp, поэтому я просто демонстрирую примеры, чтобы вам было легче понять, о чем он.