Darmowy konwerter online DBF do XML
Konwertuj tabele DBF do strukturalnego XML, sprawdzając kodowanie, pliki memo oraz zgodność schematu.
Konwertuj DBF na XML online - za darmo
Plik jest przetwarzany natychmiast i usuwany zaraz po pobraniu.
Zaimportuj plik z adresu URL
Wklej bezpośredni link do pliku. Pobierzemy go na nasz serwer i przekonwertujemy dokładnie tak jak przesłany plik.
Jak to działa
-
1/3
Prześlij swój plik .dbf
Kliknij, aby wybrać plik, który chcesz przekonwertować, lub po prostu przeciągnij go i upuść w zaznaczonym obszarze.
-
2/3
Wykonaj konwersję .dbf do .xml
Po pomyślnym przesłaniu pliku kliknij konwersję, gdy będziesz gotowy.
-
3/3
Pobierz przekonwertowany plik .xml
Wynik konwersji jest gotowy do pobrania.
Jak konwertować dbf do xml
- Bazy danych
- Brak ocen.
Starszy pakiet księgowy, aplikacja GIS lub urządzenie przemysłowe może eksportować rekordy jako DBF, podczas gdy inny system wymaga XML do wymiany, integracji lub archiwizacji. Konwersja tabeli tworzy ustrukturyzowany plik, który inne aplikacje mogą przetwarzać bez oprogramowania przeznaczonego specjalnie dla DBF.
Czym jest format DBF
DBF, nazywany również formatem dBASE, przechowuje dane tabelaryczne w pliku zawierającym nagłówek, definicje pól i rekordy. Typowe typy pól obejmują pola znakowe, liczbowe, daty, logiczne i memo.
Format wywodzi się z dBASE i jest również używany przez FoxPro, Visual FoxPro, Clipper, starsze systemy baz danych oraz wiele aplikacji GIS. Shapefile zwykle zawiera tabelę atrybutów DBF wraz z plikami .shp i .shx. Pola memo mogą wymagać pasującego pliku .dbt lub .fpt; podczas konwersji należy przechowywać te pliki towarzyszące razem z plikiem DBF.
Czym jest format XML
XML przechowuje dane hierarchiczne za pomocą nazwanych elementów i atrybutów. Przekonwertowana tabela DBF jest zwykle reprezentowana przez jeden element główny, jeden powtarzający się element rekordu dla każdego wiersza oraz elementy podrzędne odpowiadające oryginalnym polom:
<records>
<record>
<ID>17</ID>
<NAME>North Depot</NAME>
</record>
</records>
XML obsługuje UTF-8, przestrzenie nazw, walidację schematu i jawne zagnieżdżanie. Nadaje się do API, obiegów dokumentów i systemów wymagających ustrukturyzowanej wymiany danych, ale zwykle tworzy większe pliki niż CSV lub binarna baza danych. Duże pliki XML należy kompresować za pomocą ZIP lub gzip, gdy istotny jest rozmiar przesyłanych danych.
Nie istnieje uniwersalny układ DBF-to-XML. Aplikacja odbierająca może wymagać określonego elementu głównego, nazwy rekordu, przestrzeni nazw, konwencji nazewnictwa pól lub XML Schema, dlatego poprawny składniowo plik XML może nadal zakończyć się niepowodzeniem podczas importu.
Jak przekonwertować DBF do XML
W przypadku jednorazowej konwersji bez instalowania oprogramowania użyj konwertera na stronie 101convert.com: wybierz plik DBF, prześlij go, rozpocznij konwersję i pobierz wygenerowany plik XML. Jeśli usługa obsługuje pliki towarzyszące, zachowaj wymagany plik memo .dbt lub .fpt razem z plikiem DBF. Nie przesyłaj poufnych rekordów do usługi online, chyba że zezwala na to jej polityka postępowania z danymi.
W przypadku powtarzalnego przetwarzania lub kontroli nad strukturą XML Python i pakiet dbfread zapewniają praktyczną metodę desktopową:
- Zainstaluj Python i bibliotekę odczytu:
python -m pip install dbfread
- Zapisz poniższy kod jako
dbf_to_xml.py. Zastąp nazwy plików wejściowego i wyjściowego oraz ustawencodingzgodnie z rzeczywistą stroną kodową 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)
- Uruchom skrypt z folderu zawierającego plik DBF:
python dbf_to_xml.py
Skrypt tworzy jeden element record dla każdego wiersza i zapisuje deklarację XML określającą UTF-8. Python automatycznie zastępuje znaki zastrzeżone, takie jak & i <. Wygenerowana struktura jest ogólną reprezentacją; zmodyfikuj nazwy elementów i zagnieżdżenie, gdy miejsce docelowe wymaga określonego schematu.
Programy baz danych na komputery stacjonarne i aplikacje GIS mogą również udostępniać polecenie eksportu, takie jak File → Export lub Table → Export. LibreOffice Calc może otwierać wiele plików DBF, ale jego dane wyjściowe XML lub spreadsheet-XML są specyficzne dla aplikacji i mogą nie pasować do schematu oczekiwanego przez importer API lub bazy danych.
Kontrola jakości i zgodności
- Kodowanie znaków: Pliki DBF często używają starszych stron kodowych, takich jak CP1252 lub CP850, zamiast UTF-8. Nieprawidłowe ustawienie może uszkodzić znaki diakrytyczne lub tekst zapisany znakami spoza alfabetu łacińskiego. Sprawdź metadane DBF i po konwersji skontroluj reprezentatywne rekordy.
- Daty i liczby: Daty, wartości dziesiętne i zmiennoprzecinkowe DBF mogą być serializowane w różny sposób przez różne narzędzia. Ustaw jawnie format daty, separator dziesiętny, precyzję i strefę czasową, jeśli miejsce docelowe określa te parametry.
- Wartości null i puste: Brakująca wartość DBF może stać się pustym elementem XML, pominiętym elementem lub wartością tekstową zależną od używanego narzędzia. Potwierdź, w jaki sposób system docelowy rozróżnia wartość null, pustą, zero i false.
- Coś nazwy pól: Tradycyjne nazwy pól DBF są często ograniczone do dziesięciu znaków. Spacje, znaki interpunkcyjne, zduplikowane nazwy i nazwy zaczynające się od cyfry mogą wymagać mapowania na prawidłowe nazwy elementów XML; gdy nazwy ulegają zmianie, zachowaj rejestr mapowania pól.
- Pola memo: Długi tekst może być przechowywany poza plikiem DBF w pliku
.dbtlub.fpt. Bez pasującego pliku wartości memo mogą być brakujące lub nieczytelne. - Walidacja: Przed zaimportowaniem sprawdź składnię XML danych wyjściowych, liczbę wierszy, nazwy pól, kodowanie, daty, wartości null i tekst zawierający znaki spoza ASCII. Jeśli udostępniono XSD, przeprowadź walidację względem XSD odbiorcy.
Porównanie formatu DBF z XML
Jak formaty DBF i XML wypadają w porównaniu pod względem najważniejszych cech dla tej konwersji.
| Cecha | .DBF dBASE Database File | .XML Extensible Markup Language |
|---|---|---|
| Czytelny tekstowo | Nie | Tak |
| Typy danych | Typowane | Typowane |
| Zagnieżdżone struktury | Nie | Tak |
| Formuły | Nie | Nie |
| Wiele tabel lub arkuszy | Nie | — |
| Typowy rozmiar pliku | Mały | Mały |
| Otwarty standard | Częściowo otwarty | Tak |
| Najlepszy do | Wymiana danych | Wymiana danych |
| Wprowadzono | 1983 | 1998 |
| Twórca | Ashton-Tate / dBASE, Inc. (format origin) | W3C |
| Typ MIME | application/x-dbf | application/xml |
Sugerowane oprogramowanie i linki: konwertery dbf na xml
Najczęściej zadawane pytania
Czy konwerter DBF do XML jest darmowy?
Tak, konwersja DBF do XML na 101convert.com jest całkowicie darmowa. Nie wymaga rejestracji, adresu e-mail ani instalacji. Jeśli potrzebujesz wyższego limitu rozmiaru pliku lub chcesz konwertować więcej plików naraz, sprawdź nasze plany.
Jak duży może być mój plik DBF?
Możesz przesłać pliki DBF o rozmiarze do 50 MB i przekonwertować do 20 plików jednocześnie w jednej partii.
Co dzieje się z przesłanymi plikami?
Pliki są przetwarzane automatycznie i usuwane z naszych serwerów kilka minut po konwersji. Nigdy nie przeglądamy ani nie udostępniamy Twoich plików.
Czy muszę instalować oprogramowanie, aby przekonwertować DBF do XML?
Nie. Konwersja DBF do XML odbywa się całkowicie online w przeglądarce i działa w systemach Windows, Mac, Linux, Android i iPhone.
Konwersja nie powiodła się?
W większości przypadków przyczyną jest nieprawidłowy format pliku. Prześlij prawidłowy plik DBF dla tej konwersji z DBF do XML. Czasami problem może również występować po naszej stronie. Analizujemy powtarzające się nieudane konwersje i wyłączamy lub naprawiamy konwerter, jeśli wykryjemy usterkę.