2012-04-05 12 views
8

Jestem nowy w rozwoju Androida, która jest lepsza pod względem wydajności parsowania w systemie Android, XML lub JSON?

Co powinienem użyć w mojej aplikacji na Androida, XML lub JSON?

Co jest lepsze pod względem wydajności parsowania?

Byłbym wdzięczny za każdy przykładowy kod.

+0

check this

+0

Spróbuj napisać klasę, która analizuje ciąg znaków XML, a drugi, który analizuje ciąg JSON. Dodaj kod czasowy i przeprowadź kilka testów. Możesz zrobić więcej, zanim zadasz pytanie. – Flynn81

+0

Może to również jest interesujące (iPhone) http://stackoverflow.com/questions/1237649/json-or-soap-xml –

Odpowiedz

7

Kilka pytań dotyczących czegoś podobnego zostało zadanych wcześniej: What's better: Json or XML (PHP) Wyjaśniają, co jest szybsze, a które nie.

Zawsze możesz użyć Google-GSON, co sprawia, że ​​analizowanie JSON (niezależnie od tego, jak duży jest zestaw danych) jest naprawdę szybkie. Osobiście wolę JSON niż XML, ponieważ łatwiej jest wymieniać dane, mimo że czytelność jest utrudniona.

+0

:) nice ......... –

+0

GSON jest częścią Androida od api 11 jak sądzę;) zobacz http://developer.android.com/reference/android/util/JsonReader.html, ale jeśli chcesz opracować api <11 najlepiej po prostu skorzystaj z zewnętrznej biblioteki. – MrJre

23

JSON jest najlepiej porównać do XML

XML nie jest dobrze nadaje się do wymiany danych-

Prostota

XML jest prostsze niż SGML, ale JSON jest znacznie prostsze niż XML. JSON ma znacznie mniejszą gramatykę i mapuje bardziej bezpośrednio na struktury danych używane w nowoczesnych językach programowania.

Rozszerzalność

JSON nie jest rozszerzalny, ponieważ nie muszą być. JSON nie jest językiem znaczników dokumentu, więc nie ma potrzeby definiowania nowych znaczników lub atrybutów do reprezentowania w nim danych.

Interoperability

JSON ma ten sam potencjał interoperacyjności XML.

Otwartość

JSON jest co najmniej tak otwarty jak XML, być może bardziej, że nie jest w centrum walk normalizacyjnych korporacyjnych/politycznych.

Waga: Ponieważ składnia JSON wymaga mniejszej liczby znaków, jest lżejszy niż na drucie XML.

Ale nadal to zależy od wymagań!

+0

:) nice ......... –

2

na podstawie doświadczeń, analizowania XML może być uciążliwe na Androidzie 2.1 i wcześniej z powodu błędu, który łamie podmioty zakodowane w oddzielnych tagów (http://code.google.com/p/android/issues/detail?id= 2607).

Osobiście uważam, że parsowanie JSON jest bardziej wygodne. Spójrz na następujący link: http://www.technotalkative.com/android-json-parsing/

+0

:) nice ......... –

1

JSON jest lepszy niż XML, jeśli rozmiar danych nie jest zbyt duży. W związku z tym GSON, który został opracowany przy pomocy interfejsu API JSON jest lepszy, ponieważ jest łatwy w obsłudze. Ale JSON ma jedną poważną wadę, to jest - dane są ładowane do pamięci, a następnie analizowane. Jeśli wielkość danych jest zbyt duża, nastąpi to przez wyjątek. W takim przypadku - XML ​​jest bardzo użyteczny. JSON jest lepszy, ponieważ jest szybszy niż XML (ponieważ używane jest hashing)

1

Jedyna korzyść wynikająca z XML jest taka, że ​​jest bardziej "czytelna dla człowieka" ... ale widząc, że użytkownik końcowy nie będzie czytał XML, nie ma potrzeby go używać.

JSON jest znacznie łatwiej/szybciej niż do analizowania XML

Powiązane problemy