TOML til JSON-konverterer
Konverter TOML til JSON og JSON til TOML i nettleseren din. Håndterer tabeller, lister av tabeller, datoer og 64-biters heltall. Ingenting lastes opp.
Slik konverterer du TOML til JSON
- Velg retning: TOML → JSON (standard) eller JSON → TOML.
- Lim inn dataene dine, eller klikk Åpne fil for å laste inn en
.toml- eller.json-fil (opptil 10 MB). - For TOML → JSON velger du Innrykk (2 eller 4 mellomrom) og bestemmer om du vil huke av for Store heltall som strenger. For JSON → TOML kan du beholde eller fjerne haken for Utelat null-verdier.
- Huk av for Sorter nøkler hvis du vil ha hver tabell sortert alfabetisk.
- Resultatet oppdateres mens du skriver. Konverter kjører det på nytt ved behov. Feil viser linje og kolonne for problemet.
- Kopier eller last ned resultatet. Bytt retning flytter resultatet over i inndataene, slik at du kan konvertere det tilbake.
TOML og JSON ved siden av hverandre
TOML (Tom’s Obvious Minimal Language) er konfigurasjonsformatet bak Cargo.toml i Rust, pyproject.toml i Python, Hugo- og Netlify-nettsteder og mange kommandolinjeverktøy. Det er laget for å leses og redigeres av mennesker, og det kan overføres direkte til et JSON-lignende tre av tabeller (objekter), lister og verdier.
[package]
name = "demo"
version = "0.1.0"
[[bin]]
name = "cli"
blir til
{"package": {"name": "demo", "version": "0.1.0"}, "bin": [{"name": "cli"}]}
- En
[tabell]-overskrift blir til et JSON-objekt, og nøkler med punktum soma.b.c = 1blir til nestede objekter. - En liste av tabeller,
[[bin]], blir til en JSON-liste av objekter. - Innebygde tabeller
{ x = 1 }og lister fungerer slik du forventer. Kommentarer droppes, siden JSON ikke har noen.
Der de to formatene er ulike
Datoer og klokkeslett. TOML har fire egne dato-/tidstyper, mens JSON ikke har noen. Konvertereren skriver dem som ISO 8601-strenger og beholder variantene: en dato med tidsforskyvning forblir 1979-05-27T07:32:00.000-08:00, en lokal dato forblir 1979-05-27, og et lokalt klokkeslett forblir 07:32:00.000. Brøkdeler av sekunder beholdes til millisekund. Når du konverterer tilbake til TOML, får du vanlige strenger, fordi ingenting i JSON markerer dem som datoer.
Heltall. TOML-heltall er 64-biters med fortegn, fra −9 223 372 036 854 775 808 til 9 223 372 036 854 775 807. JavaScript-tall, som de fleste JSON-parsere bruker, er bare nøyaktige opp til 2^53 (9 007 199 254 740 991). Større TOML-heltall skrives med alle sifrene, noe som er gyldig JSON, men et program som leser dem som flyttall, vil runde dem av. Huk av for Store heltall som strenger for å unngå det. Et heltall utenfor 64-biters området avvises, slik TOML-spesifikasjonen krever.
Spesielle flyttall. inf, -inf og nan har ingen JSON-form, så de skrives som strengene "inf", "-inf" og "nan".
JSON → TOML. Et TOML-dokument er alltid en tabell, så JSON må være et objekt på øverste nivå. TOML har ingen null: som standard utelates null-verdier, og en melding forteller hvor mange. Fjern haken for Utelat null-verdier for i stedet å få en feil med plasseringen av den første. JSON skiller ikke mellom 1 og 1.0, så hele tall blir TOML-heltall, og tall som er for store for 64 biter, blir flyttall. I nyere nettlesere beholder store heltall i JSON-en din de nøyaktige sifrene.
Ofte stilte spørsmål
Blir konfigurasjonen min sendt noe sted?
Nei. Konverteringen kjører helt i nettleseren din, så API-nøkler eller hemmeligheter i konfigurasjonsfilene dine forlater aldri datamaskinen din.
Hvorfor ble rekkefølgen på nøklene endret i TOML-resultatet?
TOML krever at vanlige nøkkel/verdi-par kommer før undertabeller i hver tabell, så konvertereren skriver verdiene først, deretter [tabeller] og til slutt [[lister av tabeller]]. Dataene er de samme.
Bevares TOML-kommentarer?
Nei. JSON har ingen kommentarer, så de går tapt ved konvertering fra TOML til JSON, og det er ingen å gjenopprette på veien tilbake.
Hvilken TOML-versjon støttes?
TOML 1.0, inkludert nøkler med punktum, innebygde tabeller, lister av tabeller, heksadesimale, oktale og binære heltall og alle fire dato-/tidstypene.
Hvorfor er datoen min en streng i JSON?
JSON har ingen datotype. ISO 8601-strenger er den vanlige konvensjonen, og de fleste språk kan tolke dem direkte.
Relaterte verktøy
- JSON til YAML-konverterer Konverter JSON til YAML og YAML til JSON i nettleseren din, med støtte for ankere, sammenslåingsnøkler og filer med flere dokumenter. Ingenting lastes opp.
- JSON-formaterer og -validator Gratis JSON-formaterer og -validator som gjør JSON ryddig, minifiserer og kontrollerer den i nettleseren din, med syntaksfeil oppgitt med linje og kolonne.
- JSON til XML-konverterer Konverter JSON til XML og XML til JSON i nettleseren din, med håndtering av attributter, gjentatte elementer og CDATA. Ingenting lastes opp til en server.