UltKit

XML-dən JSON-a çevirici

Məlumatları SOAP cavabından, RSS lentindən, konfiqurasiya faylından və ya köhnə sistemin ixracından JavaScript, Python və ya no-code alətinizin birbaşa oxuduğu JSON-a köçürün, əl ilə parser yazmadan.

Məlumat çevirici

və ya CSV, TSV, TXT … faylları bura sürüşdürün ·

Hər fayl üçün maks. 95 MB· 20 fayla qədər· 30 dəqiqədən sonra silinir

Nəticə

Fayllar serverlərimizdə emal olunur və 30 dəqiqədən sonra silinir.

Bu alətdən necə istifadə etməli

  1. 1

    XML faylını yükləyin

    Yükləmə sahəsinə .xml fayllarını atın: bir dəstdə ən çoxu 20 fayl, hər biri 95 MB-a qədər ola bilər. Hər fayl ayrıca çevrilir.

  2. 2

    Oxunaqlı və ya yığcam formatı seçin

    Oxunaqlı formatlama aktivdir, bu, JSON-u oxumaq və kodu yoxlamaq üçün girintilərlə yazır. API sorğusu üçün ən kiçik, tək sətirli nəticə almaq istəyirsinizsə, onu Əlavə ayarlar bölməsindən söndürün.

  3. 3

    Çevirin və JSON-dan istifadə edin

    JSON formatına çevir düyməsini basın, .json faylını endirin və kodunuzda və ya alətinizdə istifadə edin.

XML-i yükləyin və JSON formatına çevir düyməsini basın: elementlər açara, təkrarlanan elementlər massivə çevrilir, atributlar isə @ prefiksli açarlar kimi saxlanır, beləliklə teqlərdəki heç bir məlumat itmir.

XML-dən JSON-a çevirici kimə lazımdır

XML 1.0 1998-ci ilin fevralında W3C Tövsiyəsi oldu və sonrakı on il ərzində sistemlərin ünsiyyət dili idi: SOAP veb xidmətləri, RSS və Atom lentləri, Office sənədləri, bank mesajları, məhsul kataloqları. Bu sistemlərin çoxu hələ də işləyir. RFC 8259-da təsvir olunan JSON isə yeni veb API-ləri ələ keçirdi, çünki JavaScript onu əlavə kitabxana olmadan oxuyur və demək olar ki, hər dildəki siyahı və lüğətlərə düz uyğun gəlir.

Beləliklə, çevirənlər adətən iki dövr arasında körpü qurur. Front-end tərtibatçısı ödəniş və ya çatdırılma provayderindən SOAP cavabı alır və sadə obyekt istəyir. Zapier və ya Make-də avtomatlaşdırma quran şəxs təchizatçının XML lentini JSON ilə daha yaxşı işləyən axına çəkir. Data mühəndisi köhnə Java tətbiqinin konfiqurasiya fayllarını köçürür, tələbə isə dərs layihəsi üçün RSS lentini JSON kimi istəyir. Hamı eyni strukturu bucaqlı mötərizələrsiz istəyir.

XML-i JSON-a çevirmək: teqlər, atributlar və mətn necə uyğunlaşır

XML girişi: atributlu sifariş, bir müştəri və iki məhsul
<order id="A-77">
  <customer>Lalə Orucova</customer>
  <total currency="EUR">59.90</total>
  <item sku="0042">Stolüstü lampa</item>
  <item sku="0108">LED lampa</item>
</order>
Yuxarıdakı sifarişin hər hissəsinin JSON-da necə göründüyü
XML quruluşuNümunəJSON nəticəsi
Kök element<order>Ən üst səviyyəli order açarı
Atributid="A-77""@id": "A-77"
Yalnız mətnli element<customer>"customer": "Lena Ortiz"
Mətn və atribut<total currency="EUR"> elementi{"@currency": "EUR", "#text": "59.90"}
Təkrarlanan elementiki <item> teqi"item": [ … , … ] massivi
Şərh<!-- note -->Atılır; JSON-da şərh yoxdur

XML

Extensible Markup Language

XML W3C tərəfindən 1998-ci ildə dərc edilmiş struktur məlumatlar üçün işarələmə dilidir. Atributlu iç-içə teqlərdən istifadə edir, sxemləri, ad fəzalarını və doğrulamanı dəstəkləyir, bu da onu mürəkkəb sənədlər üçün möhkəm edir. RSS lentləri, SVG, Office sənədləri, sayt xəritələri və bir çox korporativ və dövlət məlumat mübadiləsinin əsasındadır. XML JSON ilə müqayisədə sözçoxdur, lakin hər proqramlaşdırma dili və bir çox cədvəl aləti onu oxuya bilir.

Sıxılma
–
Şəffaflıq
–
Animasiya
–
İlk dəfə təqdim edilib
1998 · W3C
XML konvertoru

JSON

JavaScript Object Notation

JSON strukturlaşdırılmış məlumatlar üçün yüngül mətn formatıdır, 2000-ci illərin əvvəlində Douglas Crockford tərəfindən məşhurlaşdırılıb və RFC 8259 və ECMA-404 kimi standartlaşdırılıb. O, obyektləri, massivləri, sətirləri, ədədləri, məntiqi dəyərləri və null-u sadə, oxunaqlı sintaksislə təqdim edir. Veb API-lər, konfiqurasiya faylları və demək olar ki, bütün proqramlaşdırma dillərində tətbiqlər arasında məlumat mübadiləsi üçün standart formatdır. İçində şərh, tarix və sxem yoxdur, böyük iç-içə fayllar isə görüntüləyicisiz çətin oxunur.

Sıxılma
–
Şəffaflıq
–
Animasiya
–
İlk dəfə təqdim edilib
2001 · Douglas Crockford
JSON konvertoru

Köhnə və ya korporativ sistemdən gələn məlumat veb tətbiqə, skriptə və ya avtomatlaşdırma alətinə çatmalı olanda XML JSON-a çevrilir: JSON JavaScript-də birbaşa oxunur və Python lüğətlərinə düz uyğun gəlir.

JSON-da yeri olmayan XML xüsusiyyətləri

Hər iki format ağacı təsvir edir, lakin XML-də JSON-un heç vaxt olmayan əlavələri var. W3C-nin 1999-cu ildə təyin etdiyi namespace-lər bir sənəddə soap: və xsi: kimi lüğətləri qarışdırmağa imkan verir; JSON-da onlar yalnız açar adlarının tərkibində qalır. Şərhlər və emal göstərişləri üçün yer yoxdur və atılır. Qarışıq məzmun, yəni XHTML abzasındakı qalın söz kimi mətnin daxili teqlərlə növbələşməsi, XML üçün düzgündür, lakin JSON-da əlverişsiz olur, ona görə sənəd tipli XML-i JSON-dan çox HTML və ya Markdown-a çevirmək yaxşıdır.

Ən incə məqam sıradır. XML qardaş elementləri ardıcıllıqla saxlayır və sxem buna əsaslana bilər; standarta görə JSON obyektinin açarları sırasızdır. Təkrarlanan elementlər massiv daxilində sıralarını saxlayır, bu da real məlumatların çoxunu əhatə edir. XML kodda deyil, cədvəldə lazım olan düz qeyd siyahısıdırsa, XML-i Excel-ə çevirmək birbaşa sətir və sütunlar verir, XML-i CSV-yə çevirmək isə verilənlər bazasına idxal üçün fayl yaradır.

XML-dən JSON-a çevirici haqqında suallar

Niyə eyni element bir faylda massiv, digərində isə obyekt olur?

Çevirici yalnız sənəddə olanı görür. Sifarişdə üç item teqi varsa, items massivə çevrilir; yalnız biri varsa, təkrarlanan element olmadığı üçün tək obyekt alınır. JSON-u oxuyan kod hər iki formanı qəbul etməli, yaxud tək obyekti dövrdən əvvəl massivə bükməlidir.

XML atributları JSON-da necə yazılır?

Hər atribut adının qarşısına @ qoyulmuş açar olur, yəni currency="EUR" "@currency": "EUR" kimi yazılır. Elementdə həm atribut, həm mətn olduqda mətn onların yanında #text açarına düşür. Bu qayda eyni adlı atribut və daxili elementlərin toqquşmasının qarşısını alır.

XML-dəki rəqəmlər JSON ədədlərinə çevrilirmi?

XML-in öz məlumat tipləri yoxdur; teqdə 42 və "42" eyni görünür. Buna görə dəyərlər sətir kimi çıxır, bu da poçt indeksləri və 007 kimi identifikatorları qoruyur. Koda lazım olan sahələri təhlildən sonra ədədə çevirin.

soap:Envelope kimi ad sahəsi prefiksləri ilə nə baş verir?

Prefiks açar adının bir hissəsi olaraq qalır: envelope soap:Envelope, namespace elanı isə @xmlns:soap açarı kimi görünür. Bu, müxtəlif lüğətlərin elementlərini bir-birindən ayırır; yalnız birinlə işləyirsinizsə, prefiksləri kodda silin.

Sonradan JSON-u yenidən XML-ə çevirmək olarmı?

Bəli, JSON-u XML-ə alətilə. Eyni @ və #text qaydasına uyğun olaraq atributlar yenə atribut kimi qayıdır. Şərhlər və ilkin girintilər qayıtmır, çünki JSON onları saxlamayıb.