![]() |
|
Модераторы: javastic, AntonSaburov |
![]()
|
|
| furstenberg |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 11 Регистрация: 13.2.2008 Репутация: нет Всего: нет |
Здравствуйте, подскажите как загрузить файл по FTP.
Сейчас делаю так:
Строку я записал в поток, а как сделать чтобы эта строка записалась в файл? для тестирования предварительно я зарегистрировался на беспл файлов сервере, дали мне пароль на закачку: Вы можете закачать свои файлы любым FTP клиентом: * Сервер: XXX.xxx250.ifolder.ru * Логин: [email protected] * Пароль: 6XnXoXdX * Url для закачки: ftp://[email protected]:[email protected] После закачки файлов нажмите "Подтвердить". Вызов процедуры происходит без ошибок. Но и при подтверждении сообщается что файлы не записаны. Может подскажите более простой способ для тестирования. |
|||
|
||||
| Окунь |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 59 Регистрация: 8.2.2007 Где: Москва Репутация: 2 Всего: 2 |
ftp - это целый протокол
наивно чего-то ожидать, просто послав какие-то байты на фтп-сервер |
|||
|
||||
| furstenberg |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 11 Регистрация: 13.2.2008 Репутация: нет Всего: нет |
Т.е получается надо с нуля делать обработку протокола FTP? Но у Буткевича на стр 147 при описании класса Connector написано что он поддерживает протоколы: http, Socket, datagram, file, FTP, comm.
Http тоже протокол, на него ведь не наивно чего-то ожидать, просто послав какие-то байты на http-сервер! Раз в документации написано, что поддерживает FTP, значит механизмы взаимодействия уже реализованы и велосипед изобретать не надо. Я так понимаю. |
|||
|
||||
| Окунь |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 59 Регистрация: 8.2.2007 Где: Москва Репутация: 2 Всего: 2 |
Connector всего лишь открывает Connection
Чтобы работать с конкретным протоколом нужен соответствующий подкласс класса Connection. Для HTTP такой в MIDP есть: HttpConnection. А для FTP - нет. С помощью же StreamConnection ты можешь только слать байты на сервер и получать непонятные быйты в ответ. Кстати, я бы поосторожней относился к такой "документации", как Буткевич. Это сообщение отредактировал(а) Окунь - 19.5.2009, 02:20 |
|||
|
||||
| furstenberg |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 11 Регистрация: 13.2.2008 Репутация: нет Всего: нет |
Спасибо. А ещё вот такой вопрос: скачал класс simpleftp для работы с FTP, а куда его надо скопировать , чтобы пользоваться им (распаковал jar и копировал в C:\WTK22\lib\ , потом в C:\WTK22\apps\WriteMIDlet\lib\, но при использовании пишет
package org.jibble.simpleftp does not exist import org.jibble.simpleftp.*; )? В документации написано To use SimpleFTP, simply add simpleftp.jar to your classpath and import the package in whichever classes will use it. Я добавляю его в C:\WTK22\lib\ и ничего, всё та же ошибка. Это сообщение отредактировал(а) furstenberg - 19.5.2009, 12:47 |
|||
|
||||
| eugine_s |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 581 Регистрация: 14.11.2007 Где: Киев Репутация: 17 Всего: 17 |
Зачем??? Ты в папках C:\WTK22\lib\ видел хоть один .class файл или все таки там лежат .jar файлы??? Я так понимаю, что ты используешь WTK, поэтому положи весь jar файл в папку C:\WTK22\apps\WriteMIDlet\lib\ - кажется там больше ничего не нужно (WTK сам заберет все либы из папки lib) |
|||
|
||||
| furstenberg |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 11 Регистрация: 13.2.2008 Репутация: нет Всего: нет |
Да, но теперь в консоли другая ошибка:
Error preverifying class org.jibble.simpleftp.SimpleFTP VERIFIER ERROR org/jibble/simpleftp/SimpleFTP.stor(Ljava/io/File;)Z: Cannot find class java/io/FileInputStream Build failed Я посмотрел в SimpleFTP.java из SimpleFTP.jar там используется класс import java.net.*;. Может из-за него?Получается его тоже надо скопировать туда же? Искал , но не нашёл его нигде. Это сообщение отредактировал(а) furstenberg - 19.5.2009, 13:22 |
|||
|
||||
| eugine_s |
|
||||||||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 581 Регистрация: 14.11.2007 Где: Киев Репутация: 17 Всего: 17 |
А кто вам сказал, что этот SimpleFTP подходит для J2ME? Он написан для J2SE. Хотя на самом деле достаточно просто может быть переделан в версию для J2ME. пакета java.net - в J2me нет. Поэтому, все что используется от туда нужно заменить на аналоги или дописать свою реализацию.
Вместо Socket - использовать SocketConnection
Вместо BufferedReader, BufferedWriter - нужно будет что-то свое сделать. FileInputStream - в j2me для этого есть FileConnection BufferedInputStream, BufferedOutputStream - тоже нет. StringTokenizer - тоже нет P.S. Когда-то встречал реализацию FTP клиента (кажется даже simple FTP) для j2me. Добавлено через 2 минуты и 49 секунд P.P.S. советую не тратить время на поиск java.net для j2me, так как даже если найдете, то телефон может не разрешить добавлять новые классы в java.* и javax.* пакеты Добавлено через 10 минут и 18 секунд
Собственно, вот оно - motoftp - можно посмотреть как сделали из simple FTP версию пригодную для j2me Это сообщение отредактировал(а) eugine_s - 19.5.2009, 14:04 |
||||||||
|
|||||||||
| furstenberg |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 11 Регистрация: 13.2.2008 Репутация: нет Всего: нет |
Большое спасибо.
|
|||
|
||||
| furstenberg |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 11 Регистрация: 13.2.2008 Репутация: нет Всего: нет |
Вот нашёл библиотеку то что нужно на SocketConnection:
Присоединённый файл ( Кол-во скачиваний: 15 )
Ftp2Me_bin_0.2beta.zip 7,79 Kb |
|||
|
||||
![]()
|
FAQ раздела лежит здесь! |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Java ME (J2ME) | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |