Utilia

Konvertues TOML në JSON

Konverto TOML në JSON dhe JSON në TOML në shfletues. Trajton tabela, vargje tabelash, data dhe numra të plotë 64-bit. Asgjë nuk ngarkohet.

Konvertimi

Si ta konvertosh TOML në JSON

  1. Zgjidh drejtimin te Konvertimi: TOML → JSON (parazgjedhja) ose JSON → TOML.
  2. Ngjit të dhënat, ose kliko Hap një skedar për të ngarkuar një skedar .toml ose .json (deri në 10 MB).
  3. Për TOML → JSON, zgjidh Hapësirat në fillim (2 ose 4 hapësira) dhe vendos nëse do të shënosh Numra të plotë të mëdhenj si vargje. Për JSON → TOML, mbaje ose hiqja shenjën Hiq vlerat null.
  4. Shëno Rendit çelësat nëse do që çdo tabelë të renditet alfabetikisht.
  5. Rezultati përditësohet ndërsa shkruan; Konverto e ekzekuton përsëri sipas dëshirës. Gabimet tregojnë rreshtin dhe kolonën e problemit.
  6. Kopjo ose shkarko rezultatin. Ndërro drejtimin e kalon daljen te hyrja për ta konvertuar mbrapsht.

TOML dhe JSON krah për krah

TOML (Tom’s Obvious Minimal Language) është formati i konfigurimit pas Cargo.toml në Rust, pyproject.toml në Python, faqeve Hugo e Netlify dhe shumë mjeteve të linjës së komandës. Është projektuar të lexohet e të redaktohet nga njerëzit, dhe përkthehet drejtpërdrejt në një pemë të ngjashme me JSON me tabela (objekte), vargje dhe vlera.

[package]
name = "demo"
version = "0.1.0"

[[bin]]
name = "cli"

bëhet

{"package": {"name": "demo", "version": "0.1.0"}, "bin": [{"name": "cli"}]}
  • Një kokë [table] bëhet objekt JSON, dhe çelësat me pika si a.b.c = 1 bëhen objekte të ndërthurura.
  • Një varg tabelash, [[bin]], bëhet varg JSON me objekte.
  • Tabelat inline { x = 1 } dhe vargjet funksionojnë siç pritet. Komentet hiqen, pasi JSON nuk ka.

Ku ndryshojnë të dy formatet

Datat dhe ora. TOML ka katër lloje natyrale date-ore; JSON nuk ka asnjë. Konvertuesi i shkruan si vargje ISO 8601 dhe e ruan llojin e tyre: një date-orë me zhvendosje mbetet 1979-05-27T07:32:00.000-08:00, një datë lokale mbetet 1979-05-27, dhe një orë lokale mbetet 07:32:00.000. Sekondat thyesore ruhen deri te milisekonda. Kur kthehen në TOML, bëhen vargje të thjeshta, sepse asgjë në JSON nuk i shënon si data.

Numrat e plotë. Numrat e plotë TOML janë 64-bit me shenjë, nga −9 223 372 036 854 775 808 deri 9 223 372 036 854 775 807. Numrat JavaScript, që përdorin shumica e parserave JSON, janë të saktë vetëm deri në 2^53 (9 007 199 254 740 991). Numrat e plotë TOML më të mëdhenj shkruhen me të gjitha shifrat, që është JSON i vlefshëm, por një program që i lexon si double do t’i rrumbullakosë; shëno Numra të plotë të mëdhenj si vargje për ta shmangur. Një numër i plotë jashtë intervalit 64-bit refuzohet, siç e kërkon specifikimi TOML.

Numrat special me presje. inf, -inf dhe nan nuk kanë formë në JSON, ndaj shkruhen si vargjet "inf", "-inf" dhe "nan".

JSON → TOML. Një dokument TOML është gjithmonë një tabelë, ndaj JSON duhet të jetë objekt në nivelin e sipërm. TOML nuk ka null: si parazgjedhje vlerat null hiqen dhe një mesazh të tregon sa ishin; hiqja shenjën Hiq vlerat null për të marrë në vend të kësaj një gabim me vendndodhjen e të parës. JSON nuk e dallon 1 nga 1.0, ndaj numrat e plotë bëhen numra të plotë TOML, dhe numrat shumë të mëdhenj për 64 bit bëhen numra me presje. Në shfletuesit e fundit, numrat e plotë të mëdhenj në JSON-in tënd i ruajnë shifrat e sakta.

Pyetje të shpeshta

A dërgohet diku konfigurimi im?

Jo. Konvertimi ekzekutohet tërësisht në shfletuesin tënd, ndaj çelësat API ose sekretet në skedarët e konfigurimit nuk largohen kurrë nga kompjuteri yt.

Pse ndryshoi rendi i çelësave në daljen TOML?

TOML kërkon që çiftet e thjeshta çelës/vlerë të vijnë para nëntabelave në çdo tabelë, ndaj konvertuesi shkruan së pari vlerat, pastaj [tabelat], pastaj [[vargjet e tabelave]]. Të dhënat janë të njëjta.

A ruhen komentet TOML?

Jo. JSON nuk ka komente, ndaj humbasin gjatë konvertimit TOML → JSON, dhe nuk ka çfarë të rikthehet në rrugën e kthimit.

Cilin version TOML e mbështet?

TOML 1.0, përfshirë çelësat me pika, tabelat inline, vargjet e tabelave, numrat e plotë heksadecimalë, oktalë e binarë, dhe të katër llojet date-ore.

Pse data ime është varg në JSON?

JSON nuk ka lloj date. Vargjet ISO 8601 janë konventa e zakonshme, dhe shumica e gjuhëve mund t’i analizojnë drejtpërdrejt.