2016-04-17 6 views
1

Я разрабатывал приложение, использующее CodeNameOne через Netbeans, и столкнулся с некоторыми проблемами, особенно с ошибкой компиляции «не могу найти символ». После дальнейших исследований я обнаружил, что это связано с тем, что CNO не поддерживает определенные библиотеки/разное.Альтернативные методы в codenameone

мне было интересно, есть ли альтернативные способы использовать следующие библиотеки/выполняют задачи:

(чтение из файла) импорта java.io.File; символ: Файл класса местоположение: пакет java.io

(Throw FileNotFoundException) импорт java.io.FileNotFoundException; символ: класс FileNotFoundException местоположение: пакет java.io

(Чтение данных) импорт java.util.Scanner; символа: класс Scanner местоположения: пакет java.util

(функция Math основы) символ: метод пау (двойной, Int) Расположения: класс Math

(Создать отформатированные строки) символы: метод format (String) местоположение: класс String

ответ

1

Я не могу сказать наверняка обо всех примерах, которые вы указали, но вы должны рассмотреть возможность поиска в CN1 API Javadocs информации о том, как это сделать «их путь».

Например, когда речь идет о File, то Javadocs сказать:

Основная причина java.io.File & java.io.FileInputStream не поддерживается непосредственно имеет много общего с богатство этих двух API . Они эффективно позволяют сохранять файл в любом месте, однако мобильные устройства гораздо более ограничительны и не позволяют приложениям видеть/изменять файлы, принадлежащие другим приложениям.

Итак, ответ на этот вопрос, используйте их. Аналогичным образом, выполните поиск в CNA Javadocs, чтобы узнать подходящие способы делать то, что вам нужно, используя свои API.

Вы также можете обратиться к руководству разработчика, например. большинство операций на основе файлов должны выполняться либо через Storage, либо FileSystemStorage, оба из которых покрыты here. Вы должны быть очень осторожны с кодом, который использует java.io.File, поскольку это может зависеть от поведения на рабочем столе.

FileNotFoundException может быть заменен на IOException (в любом случае это подкласс IOException).

Нет прямого эквивалента Scanner, но есть встроенные анализаторы для JSON, XML, CSV & Свойства.

Некоторые из математических функций находятся в MathUtil, который включает в себя Math.pow(double, double).

Нет никакого эквивалента методу Java SE от format(). Вместо этого вам нужно будет конкатенировать строки.

Обратите внимание, что если вы публикуете какой-то код в качестве вопроса, мы можем иногда помогать с эквивалентом Codename One.

+0

Добавлены некоторые конкретные детали ответа, охватывающие детализированные записи –

+1

@ShaiAlmog, nice edit; благодаря! – ChiefTwoPencils

Смежные вопросы