Модераторы: javastic, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Работа с файловой системой телефона, запись файла 
:(
    Опции темы
Hagl
Дата 2.6.2006, 00:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 29
Регистрация: 28.3.2006

Репутация: нет
Всего: 1



Не получается создать новый файл и записать в него текст. Подозреваю, что должно быть что-то вроде этого:
Код

    StreamConnection connection;
    OutputStream output;
    
    try {
      connection = (StreamConnection)Connector.open("file:///a:/proba.txt");
      output = connection.openOutputStream();
      output.write (65);
      output.close();
      connection.close();
    }
    catch (Exception e) {}


Но это не работает. В таком варианте на телефоне выдает исключение: "invalid root: a:", пробовал заменить a:/ на с:/, все равно не работает. Заранее спасибо. 
PM MAIL   Вверх
Dancer
Дата 2.6.2006, 09:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 537
Регистрация: 29.4.2005
Где: Nizhniy Novgorod

Репутация: 33
Всего: 37



во-первых - КАКОЙ АППАРАТ!!!! (это очень важно)

Во-вторых, запусти такой вот код и получишь свои руты
Код

        try {
            Enumeration roots = FileSystemRegistry.listRoots();
            while(roots.hasMoreElements()) {
                System.out.println("Root: file:///"+(String)roots.nextElement());
            }
        } catch(Exception e) {

        }



В-третьих, двоеточие после "а" лишнее.  


--------------------
У программистов есть великая тайна: всё, что только можно, было давно кем-то когда-то написано. Разработчику только нужно знать в какое место кода какие строчки вставить! smile
PM MAIL   Вверх
javastic
Дата 2.6.2006, 09:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Комодератор
Сообщений: 1214
Регистрация: 18.3.2005
Где: St.Petersburg

Репутация: 19
Всего: 27



Hagl, Dancer прав, это тебе не консоль Windows. Иногда можно написать просто "file:///./proba.txt" 


--------------------
01101010 01100001 01110110 01100001 01110011 01110100 01101001 01100011
scjp, mcp 
PM MAIL WWW ICQ   Вверх
Hagl
Дата 2.6.2006, 10:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 29
Регистрация: 28.3.2006

Репутация: нет
Всего: 1



Enumeration roots = FileSystemRegistry.listRoots();

Что это за класс FileSystemRegistry? Не могу его нигде найти. 
PM MAIL   Вверх
Dancer
Дата 2.6.2006, 10:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 537
Регистрация: 29.4.2005
Где: Nizhniy Novgorod

Репутация: 33
Всего: 37



JSR-75 это стандартный класс. 
import javax.microedition.io.file.*; 

Это сообщение отредактировал(а) Dancer - 2.6.2006, 10:42


--------------------
У программистов есть великая тайна: всё, что только можно, было давно кем-то когда-то написано. Разработчику только нужно знать в какое место кода какие строчки вставить! smile
PM MAIL   Вверх
Hagl
Дата 2.6.2006, 10:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 29
Регистрация: 28.3.2006

Репутация: нет
Всего: 1



Dancer, вот нарыл статью:
Цитата

Для работы JSR 75 телефон должен поддерживать CLDC 1.0 или выше. Оба пакета (FC и PIM) являются дополнительными и независимыми друг от друга. Поддержка дополнительных пакетов оставляется на усмотрение производителя устройства. Конечный пользователь и J2ME разработчик не могут установить дополнительные пакеты в телефон. JSR 75 поддерживают следующие модели телефонов: Nokia 6230i, 6235, 6235i, 6255, 7270 ,3152, 3155, 3155i, 5140i, 6030, 6101,6102,6111, 6152, 6155, 6155i, 6265, 6265i, 6270, 6630, 6280, 6680, 6681, 6682, 6822, 8800, 8801, 9300, 9500, N70, N90; и Sony Ericsson W800i, W800c, K750i, K750c, K600i, K600c, D750i ,Z520i, Z520a, Z520c, W600, K608i, V600ids. Конечно это не полный список. 

У меня в javax.microedition.io нет пункта file. 
PM MAIL   Вверх
Dancer
Дата 2.6.2006, 11:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 537
Регистрация: 29.4.2005
Где: Nizhniy Novgorod

Репутация: 33
Всего: 37



1. на чём пытаешься воспроизводить своё приложение? (WTK, SDK от производителя, "железка")
2. КАКОЙ ВСЁТАКИ АППАРАТ!!!!!
3. если в WTK то поставь галочку использовать JSR-75 (WTK2.2 и выше), если не WTK то либо ищи прям от производителся, либо бери файлик из WTK2.2 с названием jsr75.jar и засовывай к себе в lib, или пропиши его в CLASSPATH или используй -D%PATH_TO_JSR_LIB%/jsr75.jar. В общем, тебе нужно чтобы ты этот файлик мог использовать при компиляции своего приложения. В нём у тебя есть класс javax.microedition.io.file.FileSystemRegistry
Если твой аппарат не поддерживает JSR-75, то нифига ты не получишь Stream таким вот образом
Цитата(Hagl @  2.6.2006,  00:04 Найти цитируемый пост)
connection = (StreamConnection)Connector.open("file:///a:/proba.txt");
, из мидлета, так как к файловой системе телефон просто так обратиться НЕ МОЖЕТ. Либо производитель включает в свой аппарат поддержку JSR-75, либо организовывает свои классы для доступа к файловой системе, либо вообще не предоставляет доступа к файловой системе телефона из МИДлета.



 


--------------------
У программистов есть великая тайна: всё, что только можно, было давно кем-то когда-то написано. Разработчику только нужно знать в какое место кода какие строчки вставить! smile
PM MAIL   Вверх
Hagl
Дата 2.6.2006, 12:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 29
Регистрация: 28.3.2006

Репутация: нет
Всего: 1



Понятно, спасибо. Буду пробовать. Сейчас скачаю новую версию WTK. А телефон Siemens. Начитался в анонсах, что midp 2.0 поддерживает работу с файловой системой, думал все легко и просто и включено в профиль, а не отдельным модулем. 
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса

  • Прежде чем задать вопрос прочтите это!
  • Литература по Java находится здесь.
  • Литературу по Java обсуждаем здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит" (возле кнопок кодов) если у Вас нет русских шрифтов.
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда

  • FAQ раздела лежит здесь!
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java ME (J2ME) | Следующая тема »


 




[ Время генерации скрипта: 0.2941 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.