#android #ftp
#Android #ftp
Вопрос:
У меня есть требование загрузить изображение с FTP-сервера на устройство Android. Я попробовал несколько примеров с помощью ftp4j-1.7.2.jar
библиотеки, но не удалось подключиться к FTP-серверам и все испортилось.
Кто-нибудь работал с FTP-серверами?
Пожалуйста, предложите установить соединение и загрузить файл с сервера.
Ответ №1:
Используйте библиотеку commons.apache.org/proper/commons-net
Проверьте приведенный ниже код для загрузки файла с FTP-сервера:
private Boolean downloadAndSaveFile(String server, int portNumber,
String user, String password, String filename, File localFile)
throws IOException {
FTPClient ftp = null;
try {
ftp = new FTPClient();
ftp.connect(server, portNumber);
Log.d(LOG_TAG, "Connected. Reply: " ftp.getReplyString());
ftp.login(user, password);
Log.d(LOG_TAG, "Logged in");
ftp.setFileType(FTP.BINARY_FILE_TYPE);
Log.d(LOG_TAG, "Downloading");
ftp.enterLocalPassiveMode();
OutputStream outputStream = null;
boolean success = false;
try {
outputStream = new BufferedOutputStream(new FileOutputStream(
localFile));
success = ftp.retrieveFile(filename, outputStream);
} finally {
if (outputStream != null) {
outputStream.close();
}
}
return success;
} finally {
if (ftp != null) {
ftp.logout();
ftp.disconnect();
}
}
}
Комментарии:
1. Привет, я установил FTP-сервер FileZilla на свой рабочий стол. Его адрес 127.0.0.1, порт 14147. Что я должен указать для имени пользователя, пароля, имени файла, локального файла??
2. Воспользуйтесь этой ссылкой lifehacker.com/339887/build-a-home-ftp-server-with-filezilla создать пользователя с filezilla и знать, как им пользоваться. Или проверьте это для тех же настроек addictivetips.com/windows-tips /…
3. Какую библиотеку вы используете??? Я получаю java.lang. Исключение NullPointerException в org.apache.commons.net.ftp.FTP.SendCommand(FTP.java:471 )