Categoria: Sviluppo

Da Properties a JSON

Idea internaManca uno strumento?

Converti file .properties Java in JSON in locale

Incolla testo .properties in stile Java con coppie `key=value`, `key: value` o `key value` e commenti `#` o `!` per convertirlo in un oggetto JSON, con l'opzione di annidare le chiavi con punti. Funziona interamente nel tuo browser.

JSON
{
  "server": {
    "host": "localhost",
    "port": "8080"
  },
  "database": {
    "name": "app_db",
    "user": "admin"
  }
}

Tutto ciò che c'è in questa pagina viene elaborato nel tuo browser. Niente viene caricato.

A cosa serve

Il formato .properties usato da Java, Spring e molti strumenti di build memorizza una chiave e un valore per riga, usando `=`, `:` o semplici spazi come separatore, con `#` e `!` a contrassegnare i commenti su riga intera. Le chiavi sono spesso organizzate in namespace con punti, come `server.port`, per imitare una gerarchia all'interno di un file piatto. Questo strumento analizza ogni riga e, quando l'annidamento è attivo, trasforma quelle chiavi con punti in un vero oggetto JSON annidato; con l'annidamento disattivato, i punti vengono mantenuti come chiavi oggetto letterali.

Come si usa

  1. Incolla testo .properties, oppure carica l'esempio.
  2. Attiva l'annidamento per espandere le chiavi con punti in oggetti annidati, oppure disattivalo per mantenerle piatte.
  3. Copia il risultato JSON.

Privacy

Questo strumento funziona interamente nel tuo browser. Quello che inserisci non viene mai caricato, salvato o condiviso: chiudendo la scheda sparisce.

Domande frequenti

Il mio file properties viene caricato da qualche parte?
No. L'analisi avviene in JavaScript eseguito nella pagina, quindi nulla di ciò che incolli lascia mai il tuo dispositivo.
Quali separatori sono supportati?
Una riga può usare `=`, `:` o semplici spazi tra chiave e valore, in linea con ciò che accetta il formato Java properties stesso.
Cosa fa l'opzione di annidamento?
Se attiva, una chiave come `server.port` produce `{"server":{"port":"8080"}}`; se disattivata, la stessa chiave resta letterale, producendo `{"server.port":"8080"}`.