Converter dbf para xml

Conversor online gratuito de DBF para XML

Converta tabelas DBF em XML estruturado, verificando a codificação, os arquivos memo e a compatibilidade do schema.

Converter DBF para XML online - grátis

Uploading…
Os arquivos selecionados excedem o limite total de 75 MB. Selecione arquivos menores ou em menor quantidade.

Seu arquivo é processado instantaneamente e excluído assim que você o baixa.

Como funciona

  1. 1/3

    Envie seu arquivo .dbf

    Clique para selecionar o arquivo que deseja converter ou simplesmente arraste e solte o arquivo na área indicada.

  2. 2/3

    Faça a conversão de .dbf para .xml

    Após o envio do arquivo, clique em converter quando estiver pronto.

  3. 3/3

    Baixe o arquivo .xml convertido

    O resultado da conversão está pronto para download.

Como converter dbf para xml arquivo

Um pacote de contabilidade legado, uma aplicação GIS ou um dispositivo industrial pode exportar registros como DBF, enquanto outro sistema exige XML para troca, integração ou arquivamento. A conversão da tabela produz um arquivo estruturado que outras aplicações podem analisar sem software específico para DBF.

O que é o formato DBF

DBF, também chamado de formato dBASE, armazena dados tabulares em um arquivo que contém um cabeçalho, definições de campos e registros. Os tipos de campo comuns incluem campos de caracteres, numéricos, de data, lógicos e memo.

O formato foi originado com o dBASE e também é usado pelo FoxPro, Visual FoxPro, Clipper, sistemas de banco de dados antigos e muitas aplicações GIS. Um shapefile normalmente inclui uma tabela de atributos DBF junto com os arquivos .shp e .shx. Os campos memo podem exigir um arquivo .dbt ou .fpt correspondente; mantenha esses arquivos complementares junto ao DBF durante a conversão.

O que é o formato XML

XML armazena dados hierárquicos usando elementos e atributos nomeados. Uma tabela DBF convertida é normalmente representada por um elemento raiz, um elemento de registro repetido para cada linha e elementos filhos para os campos originais:

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

XML oferece suporte a UTF-8, namespaces, validação de schema e aninhamento explícito. É adequado para APIs, fluxos de trabalho de documentos e sistemas que exigem intercâmbio estruturado, mas normalmente produz arquivos maiores que CSV ou um banco de dados binário. Comprima arquivos XML grandes com ZIP ou gzip quando o tamanho da transferência for importante.

Não existe um layout universal de DBF para XML. A aplicação de destino pode exigir um elemento raiz, nome de registro, namespace, convenção de nomenclatura de campos ou XML Schema específico; portanto, um arquivo XML sintaticamente válido ainda pode falhar na importação.

Como converter DBF para XML

Para uma conversão única sem instalar software, use o conversor em 101convert.com: selecione o arquivo DBF, faça upload, inicie a conversão e baixe o XML gerado. Mantenha qualquer arquivo memo .dbt ou .fpt necessário junto ao DBF se o serviço aceitar arquivos complementares. Não faça upload de registros confidenciais para um serviço online, a menos que a política de tratamento do serviço permita isso.

Para processamento repetível ou controle sobre a estrutura XML, Python e o pacote dbfread fornecem um método prático para desktop:

  1. Instale Python e a biblioteca de leitura:
python -m pip install dbfread
  1. Salve o código a seguir como dbf_to_xml.py. Substitua os nomes dos arquivos de entrada e saída e defina encoding como a code page real do 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. Execute o script a partir da pasta que contém o DBF:
python dbf_to_xml.py

O script cria um elemento record para cada linha e grava uma declaração XML especificando UTF-8. Python converte automaticamente caracteres reservados, como & e <. A estrutura gerada é uma representação genérica; modifique os nomes dos elementos e o aninhamento quando o destino exigir um schema definido.

Programas de banco de dados para desktop e aplicações GIS também podem fornecer um comando de exportação, como File → Export ou Table → Export. O LibreOffice Calc pode abrir muitos arquivos DBF, mas sua saída XML ou spreadsheet-XML é específica da aplicação e pode não corresponder ao schema esperado por uma API ou importador de banco de dados.

Verificações de qualidade e compatibilidade

  • Codificação de caracteres: os arquivos DBF geralmente usam code pages legadas, como CP1252 ou CP850, em vez de UTF-8. Uma configuração incorreta pode corromper textos acentuados ou não latinos. Verifique os metadados do DBF e inspecione registros representativos após a conversão.
  • Datas e números: datas, decimais e valores de ponto flutuante do DBF podem ser serializados de forma diferente por ferramentas distintas. Defina um formato de data, separador decimal, precisão e fuso horário explícitos se o destino os especificar.
  • Valores nulos e em branco: um valor ausente no DBF pode se tornar um elemento XML vazio, um elemento omitido ou um valor de texto específico da ferramenta. Confirme como o destino diferencia nulo, vazio, zero e falso.
  • Nomes de campos: os nomes de campos DBF tradicionais geralmente são limitados a dez caracteres. Espaços, pontuação, nomes duplicados e nomes que começam com um número podem precisar ser mapeados para nomes de elementos XML válidos; mantenha um registro de mapeamento de campos quando os nomes forem alterados.
  • Campos memo: textos longos podem ser armazenados fora do DBF em um arquivo .dbt ou .fpt. Sem o arquivo correspondente, os valores memo podem estar ausentes ou ilegíveis.
  • Validação: verifique a sintaxe XML da saída, a quantidade de linhas, os nomes dos campos, a codificação, as datas, os valores nulos e o texto não ASCII antes de importá-la. Valide-a em relação ao XSD do destinatário quando um for fornecido.

Comparação de formato: DBF vs XML

Como os formatos DBF e XML se comparam nas propriedades mais importantes para esta conversão.

Comparação dos formatos de arquivo DBF e XML
Propriedade .DBF dBASE Database File .XML Extensible Markup Language
Legível em texto simples Não Sim
Tipos de dados Tipado Tipado
Estruturas aninhadas Não Sim
Fórmulas Não Não
Múltiplas tabelas ou planilhas Não —
Tamanho típico do arquivo Pequeno Pequeno
Padrão aberto Parcialmente aberto Sim
Mais usado para Intercâmbio de dados Intercâmbio de dados
Introduzido 1983 1998
Desenvolvedor Ashton-Tate / dBASE, Inc. (format origin) W3C
Tipo MIME application/x-dbf application/xml

Perguntas frequentes

O conversor de DBF para XML é gratuito?

Sim, converter DBF para XML no 101convert.com é totalmente gratuito. Não é necessário cadastro, e-mail nem instalação. Se você precisa de um limite de tamanho de arquivo maior ou quer converter mais arquivos de uma vez, veja nossos planos.

Qual o tamanho máximo do meu arquivo DBF?

Você pode enviar arquivos DBF de até 50 MB e converter até 20 arquivos de uma vez em um único lote.

O que acontece com os arquivos enviados?

Os arquivos são processados automaticamente e excluídos dos nossos servidores poucos minutos após a conversão. Nunca visualizamos nem compartilhamos seus arquivos.

Preciso instalar algum programa para converter DBF para XML?

Não. A conversão de DBF para XML é feita totalmente online no navegador e funciona no Windows, Mac, Linux, Android e iPhone.

A conversão falhou?

Na maioria dos casos, a causa é um formato de arquivo incorreto. Envie um arquivo DBF válido para esta conversão de DBF para XML. Às vezes, o problema também pode estar do nosso lado. Analisamos falhas de conversão recorrentes e desativamos ou corrigimos o conversor se detectarmos algum defeito.