Я хочу знать, как проанализировать данные XML на BlackBerry.
Я считал где-нибудь, что JSON является хорошим методом проанализировать данные XML.
Там какие-либо учебные руководства должны проанализировать данные XML с помощью JSON или какого-либо другого механизма?
Простой API для XML (SAX) был разработан членами публичного списка рассылки (XML-DEV). Он дает подход к парсингу XML, основанный на событиях. Это означает, что вместо перехода от узла к узлу, он переходит от события к событию. SAX - это интерфейс, управляемый событиями. События включают теги XML, обнаружение ошибок и т.д, J2ME SAX - см. BlackBerry/J2ME - SAX разбор коллекции объектов с атрибутами
Вытягивающий парсер XML - оптимален для приложений, которым требуется быстрый и небольшой парсер XML. Его следует использовать, когда все процессы должны выполняться быстро и эффективно для ввода элементов kXML - J2ME pull parser - см. Лучший подход для создания XML в Blackberry
Стандарт Blackberry для парсинга JSON - JSON ME
Без понятия... JSON может быть представлен и передан как XML, но не наоборот.
XML (Extensible Markup Language) - это набор правил для кодирования документов в электронном виде. Он определен в спецификации XML 1.0, разработанной W3C, и в нескольких других связанных спецификациях, все они являются бесплатными открытыми стандартами.
Образец XML:
<?xml version="1.0" encoding='UTF-8'?>
<painting>
<img src="madonna.jpg" alt='Foligno Madonna, by Raphael'/>
<caption>This is Raphael's "Foligno" Madonna, painted in
<date>1511</date>–<date>1512</date>.
</caption>
</painting>
JSON (аббревиатура от JavaScript Object Notation) - это легкий текстовый открытый стандарт, предназначенный для обмена данными в человекочитаемом виде. Он заимствован из языка программирования JavaScript для представления простых структур данных и ассоциативных массивов, называемых объектами ("O" в "JSON"). Несмотря на связь с JavaScript, он является языково-независимым, парсеры доступны практически для каждого языка программирования.
Пример JSON:
{
"firstName": "John",
"lastName": "Smith",
"age": 25,
"address": {
"streetAddress": "21 2nd Street",
"city": "New York",
"state": "NY",
"postalCode": "10021"
},
"phoneNumber": [
{ "type": "home", "number": "212 555-1234" },
{ "type": "fax", "number": "646 555-4567" }
]
}
В принципе, если ваш XML является сильным эквивалентом JSON, например:
<Person>
<firstName>John</firstName>
<lastName>Smith</lastName>
<age>25</age>
<address>
<streetAddress>21 2nd Street</streetAddress>
<city>New York</city>
<state>NY</state>
<postalCode>10021</postalCode>
</address>
<phoneNumber type="home">212 555-1234</phoneNumber>
<phoneNumber type="fax">646 555-4567</phoneNumber>
</Person>
есть возможность разобрать такой XML с помощью JSON.
Парсинг обычно выполняется с помощью сторонней библиотеки, которую можно загрузить в проект. Если вы используете XML, я использовал библиотеку под названием kXML parser. Его настройка может быть хлопотной, но здесь есть инструкции по его настройке -
http://www.craigagreen.com/index.php?/Blog/blackberry-and-net-webservice-tutorial-part-1.html
Использование kXML довольно простое. В этом руководстве объясняется, как разобрать XML файл -
http://www.roseindia.net/j2me/kxml/j2me-xml-parser.shtml
Edit: Whoops, в первом руководстве в следующем посте есть довольно полный обзор по разбору xml на kxml2. Так что мой пост вроде как лишний.