Converti dbf in xml

Convertitore online gratuito da DBF a XML

Converti le tabelle DBF in XML strutturato verificando la codifica, i file memo e la compatibilità dello schema.

Converti DBF in XML online - gratuito

Uploading…
I file selezionati superano il limite totale di 75 MB. Seleziona file meno numerosi o più piccoli.

Il tuo file viene elaborato istantaneamente ed eliminato non appena lo scarichi.

Come funziona

  1. 1/3

    Carica il tuo file .dbf

    Fai clic per selezionare il file che vuoi convertire oppure trascinalo semplicemente nell'area indicata.

  2. 2/3

    Avvia la conversione da .dbf a .xml

    Dopo il caricamento del file, fai clic su converti quando sei pronto.

  3. 3/3

    Scarica il file .xml convertito

    Il risultato della conversione è pronto per il download.

Come convertire dbf in xml file

  • Database

Un pacchetto contabile legacy, un'applicazione GIS o un dispositivo industriale può esportare i record come DBF, mentre un altro sistema richiede XML per lo scambio, l'integrazione o l'archiviazione. La conversione della tabella produce un file strutturato che altre applicazioni possono analizzare senza software specifico per DBF.

Cos'è il formato DBF

DBF, chiamato anche formato dBASE, memorizza dati tabulari in un file contenente un'intestazione, definizioni dei campi e record. I tipi di campo comuni includono campi carattere, numerici, data, logici e memo.

Il formato è nato con dBASE ed è utilizzato anche da FoxPro, Visual FoxPro, Clipper, sistemi di database meno recenti e molte applicazioni GIS. Uno shapefile normalmente include una tabella degli attributi DBF insieme ai file .shp e .shx. I campi memo possono richiedere un file .dbt o .fpt corrispondente; durante la conversione, mantieni questi file associati accanto al DBF.

Cos'è il formato XML

XML memorizza dati gerarchici utilizzando elementi e attributi denominati. Una tabella DBF convertita viene comunemente rappresentata da un elemento radice, un elemento record ripetuto per ogni riga ed elementi figli per i campi originali:

<records>
  <record>
    <ID>17</ID>
    <NAME>North Depot</NAME>
  </record>
</records>

XML supporta UTF-8, namespace, la convalida dello schema e l'annidamento esplicito. È adatto per API, flussi di lavoro documentali e sistemi che richiedono uno scambio strutturato, ma normalmente produce file più grandi rispetto a CSV o a un database binario. Comprimi i file XML di grandi dimensioni con ZIP o gzip quando le dimensioni di trasferimento sono importanti.

Non esiste un layout DBF-to-XML universale. L'applicazione ricevente può richiedere un particolare elemento radice, nome del record, namespace, convenzione per la denominazione dei campi o XML Schema, quindi un file XML sintatticamente valido potrebbe comunque non riuscire a essere importato.

Come convertire DBF in XML

Per una conversione una tantum senza installare software, utilizza il convertitore su 101convert.com: seleziona il file DBF, caricalo, avvia la conversione e scarica l'XML generato. Se il servizio accetta file associati, mantieni l'eventuale file memo .dbt o .fpt richiesto insieme al DBF. Non caricare record riservati su un servizio online a meno che la relativa politica di gestione non lo consenta.

Per elaborazioni ripetibili o per controllare la struttura XML, Python e il pacchetto dbfread offrono un metodo pratico per desktop:

  1. Installa Python e la libreria di lettura:
python -m pip install dbfread
  1. Salva quanto segue come dbf_to_xml.py. Sostituisci i nomi dei file di input e di output e imposta encoding sulla code page effettiva del DBF.
import re
from dbfread import DBF
from xml.etree.ElementTree import Element, SubElement, ElementTree

input_file = "data.dbf"
output_file = "data.xml"

def xml_name(value):
    name = re.sub(r"[^A-Za-z0-9_.-]", "_", str(value).strip())
    if not name or not re.match(r"[A-Za-z_]", name):
        name = "field_" + name
    return name

table = DBF(input_file, load=False, encoding="cp1252")
root = Element("records")

for row in table:
    record = SubElement(root, "record")
    for field, value in row.items():
        element = SubElement(record, xml_name(field))
        if value is not None:
            element.text = str(value)

ElementTree(root).write(output_file, encoding="utf-8", xml_declaration=True)
  1. Esegui lo script dalla cartella contenente il DBF:
python dbf_to_xml.py

Lo script crea un elemento record per ogni riga e scrive una dichiarazione XML che specifica UTF-8. Python esegue automaticamente l'escape dei caratteri riservati come & e <. La struttura generata è una rappresentazione generica; modifica i nomi degli elementi e l'annidamento quando la destinazione richiede uno schema definito.

I programmi di database per desktop e le applicazioni GIS possono inoltre fornire un comando di esportazione come File → Export o Table → Export. LibreOffice Calc può aprire molti file DBF, ma il suo output XML o spreadsheet-XML è specifico dell'applicazione e potrebbe non corrispondere allo schema previsto da un'importazione tramite API o database.

Controlli di qualità e compatibilità

  • Codifica dei caratteri: i file DBF utilizzano spesso code page legacy come CP1252 o CP850 anziché UTF-8. Un'impostazione errata può danneggiare il testo accentato o non latino. Controlla i metadati del DBF ed esamina alcuni record rappresentativi dopo la conversione.
  • Date e numeri: date, valori decimali e valori a virgola mobile DBF possono essere serializzati in modo diverso da strumenti differenti. Imposta un formato della data, un separatore decimale, una precisione e un fuso orario espliciti se la destinazione li specifica.
  • Valori null e vuoti: un valore DBF mancante può diventare un elemento XML vuoto, un elemento omesso o un valore testuale specifico dello strumento. Verifica come la destinazione distingue tra null, vuoto, zero e falso.
  • Nomi dei campi: i nomi dei campi DBF tradizionali sono spesso limitati a dieci caratteri. Spazi, punteggiatura, nomi duplicati e nomi che iniziano con un numero potrebbero richiedere una mappatura in nomi di elementi XML validi; conserva un registro della mappatura dei campi quando i nomi cambiano.
  • Campi memo: il testo lungo può essere memorizzato al di fuori del DBF in un file .dbt o .fpt. Senza il file corrispondente, i valori memo potrebbero mancare o risultare illeggibili.
  • Convalida: controlla la sintassi XML dell'output, il numero di righe, i nomi dei campi, la codifica, le date, i valori null e il testo non ASCII prima di importarlo. Esegui la convalida rispetto all'XSD del destinatario quando ne viene fornito uno.

Confronto formato: DBF vs XML

Come i formati DBF e XML si confrontano sulle proprietà più importanti per questa conversione.

Confronto dei formati DBF e XML
Proprietà .DBF dBASE Database File .XML Extensible Markup Language
Leggibile come testo semplice No Sì
Tipi di dati Tipizzato Tipizzato
Strutture nidificate No Sì
Formule No No
Più tabelle o fogli No —
Dimensione tipica del file Piccolo Piccolo
Standard aperto Parzialmente aperto Sì
Ideale per Scambio dati Scambio dati
Introdotto 1983 1998
Sviluppatore Ashton-Tate / dBASE, Inc. (format origin) W3C
Tipo MIME application/x-dbf application/xml

Domande frequenti

Il convertitore da DBF a XML è gratuito?

Sì, convertire DBF in XML su 101convert.com è completamente gratuito. Non sono richiesti registrazione, e-mail o installazione. Se hai bisogno di un limite di dimensione del file più alto o vuoi convertire più file alla volta, consulta i nostri piani.

Quanto può essere grande il mio file DBF?

Puoi caricare file DBF fino a 50 MB e convertire fino a 20 file alla volta in un unico lotto.

Cosa succede ai file caricati?

I file vengono elaborati automaticamente ed eliminati dai nostri server pochi minuti dopo la conversione. Non visualizziamo né condividiamo mai i tuoi file.

Devo installare un software per convertire DBF in XML?

No. La conversione da DBF a XML avviene completamente online nel browser e funziona su Windows, Mac, Linux, Android e iPhone.

La conversione non è riuscita?

Nella maggior parte dei casi, la causa è un formato di file errato. Carica un file DBF valido per questa conversione da DBF a XML. A volte il problema può dipendere anche da noi. Analizziamo gli errori di conversione ricorrenti e disattiviamo o ripariamo il convertitore se rileviamo un difetto.