TOML til JSON-konverter
Konvertér TOML til JSON og JSON til TOML i din browser. Håndterer tabeller, arrays af tabeller, datoer og 64-bit-heltal. Intet uploades.
Sådan konverterer du TOML til JSON
- Vælg retningen: TOML → JSON (standard) eller JSON → TOML.
- Indsæt dine data, eller klik på Åbn fil for at indlæse en
.toml- eller.json-fil (op til 10 MB). - Ved TOML → JSON vælger du Indrykning (2 eller 4 mellemrum) og afgør, om du vil sætte kryds ved Store heltal som strenge. Ved JSON → TOML kan du beholde eller fjerne krydset ved Udelad null-værdier.
- Sæt kryds ved Sortér nøgler, hvis du vil have hver tabel ordnet alfabetisk.
- Resultatet opdateres, mens du skriver; Konvertér kører det igen efter behov. Fejl viser linje og kolonne for problemet.
- Kopiér eller download resultatet. Skift retning flytter outputtet over i inputtet, så du kan konvertere det tilbage.
TOML og JSON side om side
TOML (Tom’s Obvious Minimal Language) er konfigurationsformatet bag Cargo.toml i Rust, pyproject.toml i Python, Hugo- og Netlify-websites og mange kommandolinjeværktøjer. Det er lavet til at blive læst og redigeret af mennesker, og det svarer direkte til et JSON-lignende træ af tabeller (objekter), arrays og værdier.
[package]
name = "demo"
version = "0.1.0"
[[bin]]
name = "cli"
bliver til
{"package": {"name": "demo", "version": "0.1.0"}, "bin": [{"name": "cli"}]}
- En
[table]-overskrift bliver til et JSON-objekt, og nøgler med punktum soma.b.c = 1bliver til indlejrede objekter. - Et array af tabeller,
[[bin]], bliver til et JSON-array af objekter. - Inline-tabeller
{ x = 1 }og arrays virker, som du forventer. Kommentarer droppes, da JSON ikke har nogen.
Hvor de to formater adskiller sig
Datoer og klokkeslæt. TOML har fire indbyggede typer til dato og tid; JSON har ingen. Konverteren skriver dem som ISO 8601-strenge og bevarer deres art: et tidspunkt med tidszoneforskydning forbliver 1979-05-27T07:32:00.000-08:00, en lokal dato forbliver 1979-05-27, og et lokalt klokkeslæt forbliver 07:32:00.000. Brøkdele af sekunder bevares til millisekundet. Når du konverterer tilbage til TOML, får du almindelige strenge, fordi intet i JSON markerer dem som datoer.
Heltal. TOML-heltal er 64-bit med fortegn, fra −9.223.372.036.854.775.808 til 9.223.372.036.854.775.807. JavaScript-tal, som de fleste JSON-fortolkere bruger, er kun nøjagtige op til 2^53 (9.007.199.254.740.991). Større TOML-heltal skrives med alle cifre, hvilket er gyldig JSON, men et program, der læser dem som doubles, afrunder dem; sæt kryds ved Store heltal som strenge for at undgå det. Et heltal uden for 64-bit-intervallet afvises, som TOML-specifikationen kræver.
Specielle flydende tal. inf, -inf og nan har ingen JSON-form, så de skrives som strengene "inf", "-inf" og "nan".
JSON → TOML. Et TOML-dokument er altid en tabel, så JSON skal være et objekt på øverste niveau. TOML har ingen null: som standard udelades null-værdier, og en meddelelse fortæller, hvor mange; fjern krydset ved Udelad null-værdier for i stedet at få en fejl med placeringen af den første. JSON skelner ikke mellem 1 og 1.0, så hele tal bliver til TOML-heltal, og tal, der er for store til 64 bit, bliver til flydende tal. I nyere browsere bevarer store heltal i din JSON deres nøjagtige cifre.
Ofte stillede spørgsmål
Bliver min konfiguration sendt nogen steder hen?
Nej. Konverteringen kører helt i din browser, så API-nøgler eller hemmeligheder i dine konfigurationsfiler aldrig forlader din computer.
Hvorfor er rækkefølgen af mine nøgler ændret i TOML-outputtet?
TOML kræver, at almindelige nøgle/værdi-par står før undertabeller i hver tabel, så konverteren skriver først værdier, derefter [tabeller] og til sidst [[arrays af tabeller]]. Dataene er de samme.
Bevares TOML-kommentarer?
Nej. JSON har ingen kommentarer, så de går tabt ved konvertering fra TOML til JSON, og der er ingen at genskabe på vejen tilbage.
Hvilken TOML-version understøttes?
TOML 1.0, herunder nøgler med punktum, inline-tabeller, arrays af tabeller, hexadecimale, oktale og binære heltal og alle fire typer til dato og tid.
Hvorfor er min dato en streng i JSON?
JSON har ingen datotype. ISO 8601-strenge er den sædvanlige konvention, og de fleste sprog kan læse dem direkte.
Relaterede værktøjer
- JSON til YAML-konverter Konvertér JSON til YAML og YAML til JSON i din browser, med understøttelse af ankre, merge-nøgler og filer med flere dokumenter. Intet uploades.
- JSON-formatering og -validering Gratis JSON-formatering og -validering, der gør JSON pæn, minificerer og tjekker den i din browser, med syntaksfejl angivet med linje og kolonne.
- JSON til XML-konverter Konvertér JSON til XML og XML til JSON i din browser, med attributter, gentagne elementer og CDATA håndteret. Intet uploades til en server.