Teknobench

Tiontaire JSON go XML

Tiontaigh JSON go XML agus XML go JSON i do bhrabhsálaí, le tréithe, eilimintí athdhéanta agus CDATA láimhseáilte. Ní uaslódáiltear aon rud chuig freastalaí.

Tiontú

Conas an tiontaire JSON go XML a úsáid

  1. Roghnaigh an treo: JSON → XML nó XML → JSON.
  2. Greamaigh do shonraí, nó cliceáil Oscail comhad chun comhad .json nó .xml a lódáil (suas le 10 MB).
  3. Socraigh na roghanna: Eangú (2 spás, 4 spás, táb nó Gan eangú (dlúth)) don dá threo; Eilimint fréimhe agus Cuir an dearbhú XML leis do JSON → XML; Tiontaigh uimhreacha agus boole do XML → JSON.
  4. Cliceáil Tiontaigh. Nuashonraítear an toradh agus tú ag clóscríobh freisin, agus taispeánann earráidí an líne agus an colún inar aimsíodh an fhadhb.
  5. Cóipeáil nó íoslódáil an toradh. Cuireann Malartaigh an treo an t-aschur ar ais san ionchur ionas gur féidir leat an babhta iomlán a sheiceáil.

Conas a mhapálann JSON go XML

Níl an múnla sonraí céanna ag XML agus JSON, mar sin leanann gach tiontaire coinbhinsiún. Úsáideann an uirlis seo an ceann a úsáidtear go forleathan ón leabharlann fast-xml-parser:

JSON XML
{"title": "Dune"} <title>Dune</title>
{"book": {"@id": "42"}} <book id="42"/>
{"p": {"@lang": "en", "#text": "Hi"}} <p lang="en">Hi</p>
{"tag": ["a", "b"]} <tag>a</tag><tag>b</tag>
  • Éiríonn eochracha a thosaíonn le @ ina dtréithe, agus coinníonn an eochair #text téacs eilimint a bhfuil tréithe aici freisin.
  • Éiríonn eagar ina eilimint athdhéanta leis an ainm céanna.
  • Teastaíonn eilimint fréimhe amháin go beacht ó dhoiciméad XML. Má tá do JSON ina réad le heochair amháin a bhfuil réad mar luach aici, éiríonn an eochair sin ina fréamh. Seachas sin, fillteann an luach iomlán san eilimint a ainmnítear in Eilimint fréimhe (root de réir réamhshocraithe), agus éiríonn míreanna eagair ar an leibhéal barr ina n-eilimintí <item>.
  • Ceartaítear eochracha nach ainmneacha XML bailí iad: éiríonn spásanna agus siombailí _, agus faigheann ainm a thosaíonn le digit _ tosaigh ("1st place" → <_1st_place>).
  • Tugann null agus sreanga folmha eilimint fholamh mar <note/>. Éalaítear carachtair speisialta (&, <, >, comharthaí athfhriotail).

Conas a mhapálann XML go JSON

  • Éiríonn tréithe ina n-eochracha le réimír @, agus éiríonn téacs measctha #text.
  • Éiríonn eilimintí athdhéanta ina n-eagar; éiríonn eilimint a fheictear uair amháin ina luach amháin.
  • Cumaisctear rannáin CDATA isteach sa téacs, agus díchódaítear aonáin mar &amp;. Scaoiltear an dearbhú XML, treoracha próiseála agus tuairimí.
  • Le Tiontaigh uimhreacha agus boole, éiríonn <price>12.5</price> 12.5 agus éiríonn true ina bhoole, agus fanann luachanna le nialas tosaigh, mar 007, ina sreanga. Cuir an rogha as chun gach luach a choinneáil mar théacs.

Sula dtiontaítear, seiceáiltear an XML le haghaidh foirmithe cheart: tuairiscítear clib dúnta ar iarraidh, clib mhíchomhoiriúnach nó & gan éalú lena líne agus a colún.

Ceisteanna coitianta

An seoltar mo shonraí chuig freastalaí?

Ní sheoltar. Ritheann an tiontú go hiomlán i do bhrabhsálaí. Fanann do bheathaí XML, teachtaireachtaí SOAP agus comhaid chumraíochta ar do ríomhaire.

Cén fáth a n-éiríonn eilimint ina heagar i gcomhad amháin agus ina réad i gcomhad eile?

Ní insíonn XML an bhfuil eilimint ina liosta. Nuair a fheictear <tag> faoi dhó, éiríonn sé ina eagar; nuair a fheictear uair amháin é, is luach amháin é. Má tá do chód ag súil le heagar, láimhseáil an dá chás, nó cuir dara heilimint leis agus tú ag tástáil.

Cén fáth nach mbíonn an babhta iomlán comhionann i gcónaí?

Níl coibhéis ag roinnt faisnéise ar an taobh eile: tuairimí, ord ábhair mheasctha, nó an difríocht idir eagar le heilimint amháin agus luach amháin. Do ghnáthdhoiciméid sonraí, tugann tiontú JSON → XML → JSON an struchtúr céanna ar ais.

An féidir liom ainmspásanna a úsáid?

Is féidir. Coinnítear ainmneacha le réimír mar soap:Envelope agus tréithe mar @xmlns:soap mar atá sa dá threo.

An bhfíoraíonn sé i gcoinne scéimre XSD?

Ní fhíoraíonn. Seiceálann sé go bhfuil an XML foirmithe i gceart, ach ní bhailíochtaíonn sé i gcoinne DTD ná scéimre XSD é.