Конвертация DBF в CSV

Материал из GIS-Lab
Версия от 18:54, 24 июля 2012; Voltron (обсуждение | вклад) (Новая страница: «{{Статья|Опубликована|dbf2csv}} {{Аннотация|Описание инструмента.}} При работе с shape-файлами и …»)
(разн.) ← Предыдущая версия | Текущая версия (разн.) | Следующая версия → (разн.)
Перейти к навигации Перейти к поиску
Эта страница опубликована в основном списке статей сайта
по адресу http://gis-lab.info/qa/dbf2csv.html


Описание инструмента.

При работе с shape-файлами и не только довольно часто встречается задача преобразования файла формата dbf в обычный текстовый файл с разделителями. И хотя програм, производящих такого рода преобразование, достаточно много (например, широко распространенные MSOffice или OOffice), во многих случаях бывает удобно использовать небольшую специализированную утилиту, вызываемую из командной строки.

Для преобразования dbfcsv можно использовать скрипт на языке Python (скачать скрипт).

Скрипт использует библиотеку dbfpy, которая должна быть установлена в системе (скачать dbf2py).

Использование

Утилита вызывается из командной строки и принимает несколько параметров:

dbf2csv.py --file=DBFfile --out=CSVfile --header=False|True --delim=DELIM --cols=1,4
  • DBFfile — обязательный параметр: имя файла dbf, который требуется преобразовать в файл csv
  • CSVfile — необязательный параметр: имя файла csv, в который будет записано содержимое файла dbf. Если данный параметр не указан, содержимое dbf-файла будет отправлено на стандартый вывод (stdout).
  • header — необязательный параметр, может принимать два значения: True (записывать в файл заголовки полей) или False (не писать заголовки полей). По умолчанию он равен True
  • delim — необязательный параметр: указвает строку-разделитель полей в результирующем файле csv. По умолчанию равен запятой («,»).
  • cols — порядковые номера импортируемых полей (первое поле имеет номер 1).

Примеры

Импортировать все в файл data.csv, не добавлять имена полей

dbf2csv.py --file=data.dbf --header=False

Импортировать все в файл text.csv, добавлять имена полей, использовать разделитель «&»

dbf2csv.py --file=data.dbf --out=text.csv --header=True --delim="&"

Ссылки по теме