Форматы · Базы данных

DBF-файл: чем открыть, конвертировать и разобраться с кодировкой

Файл с расширением .dbf — это таблица базы данных формата dBASE. Его присылают из 1С, ФНС, ГИБДД и других ведомственных систем, но ни Windows, ни современный Excel не открывают его «из коробки». В этом руководстве разбираем все рабочие способы: от бесплатных просмотрщиков до Python-скрипта, который превращает DBF в CSV за секунду.

Коротко: DBF — табличная база данных формата dBASE, часто встречающаяся в файлах 1С, реестрах ведомств и старых системах учёта. Открыть её можно бесплатно: в LibreOffice Calc, DBF Viewer 2000 или онлайн. Если вместо текста — крякозябры, виновата кодировка cp866 — это лечится за два шага.

23 сентября 2026 Редакция Loadfile Чтение ~10 мин
DBF-файл: чем открыть, конвертировать и разобраться с кодировкой
Содержание
  1. Что такое DBF-файл и где он встречается
  2. Структура DBF-файла: что внутри
  3. Чем открыть DBF — 5 бесплатных способов
  4. Как открыть DBF в Excel 2016–2024
  5. Как открыть и сохранить DBF в LibreOffice Calc
  6. Конвертация DBF в CSV, XLSX и другие форматы
  7. Кодировка кириллицы в DBF — как исправить крякозябры
  8. Как открыть DBF на Linux и macOS
  9. Безопасен ли DBF-файл?
  10. Читайте также
  11. Частые вопросы о формате DBF

Что такое DBF-файл и где он встречается

DBF (DataBase File) — это формат хранения табличных данных, разработанный компанией Ashton-Tate для СУБД dBASE в 1980-х годах. Файл .dbf содержит строки (записи) и столбцы (поля) — всё то же самое, что в привычной Excel-таблице, только сохранённое в специфическом бинарном формате с хедером.

История формата: от dBASE до FoxPro

dBASE II вышел в 1981 году и стал одной из первых массовых баз данных для персональных компьютеров. Формат .dbf унаследовали десятки совместимых систем: Clipper, FoxBase, Visual FoxPro, Paradox, xBase. Когда в конце 1990-х корпоративный мир перешёл на SQL-серверы, dbf-файлы остались в наследство — в архивах, старых программах и, что важно для России, в государственных ИТ-системах.

Где DBF используется в России сегодня

Формат DBF живёт в российской IT-инфраструктуре по нескольким причинам: он прост, компактен и поддерживается 1С:Предприятием всех версий. Чаще всего DBF-файл попадает к вам из одного из этих источников:

  • 1С:Предприятие и 1С:Бухгалтерия — экспорт справочников, оборотных ведомостей, кассовых операций.
  • ФНС (Федеральная налоговая служба) — выписки из ЕГРЮЛ и ЕГРИП до 2020 года поставлялись в DBF.
  • ГИБДД и РСА — базы транспортных средств, страховых полисов, базы розыска.
  • Росреестр — архивные выгрузки сведений о земельных участках и объектах недвижимости.
  • Архивные базы муниципалитетов — адресные реестры, базы населённых пунктов.
  • Медицинские информационные системы — наследие от систем советской эпохи и ранних 2000-х.

Структура DBF-файла: что внутри

💡
Знать структуру не обязательно

Если вы просто хотите открыть или конвертировать файл, переходите к следующему разделу. Знание структуры помогает при ошибках кодировки и при работе с файлом программно.

DBF-файл состоит из трёх частей. Первые 32 байта — хедер: версия формата, дата последнего изменения, количество записей, размер хедера, размер записи. Затем идут дескрипторы полей — по 32 байта на каждое: имя поля, тип (C=строка, N=число, D=дата, L=логическое, M=Memo), длина и количество десятичных знаков. После дескрипторов записан байт завершения хедера (0x0D), а дальше идут сами данные — строки фиксированной длины без разделителей.

Важный байт: позиция 0x1D (29-й байт хедера) — идентификатор языковой страницы (Language Driver ID). Именно по нему корректная программа определяет кодировку: 0x26 = cp866 (DOS-кириллица), 0x03 = cp1252, 0x57 = ANSI cp1251. Если программа игнорирует этот байт и применяет кодировку наугад, вы получаете классические крякозябры. Спецификацию формата можно найти на dbf2002.com.

Чем открыть DBF в Windows — 5 бесплатных способов

Перечислим программы от самой простой до самой функциональной.

DBF Viewer 2000 — проще всего

DBF Viewer 2000 — минималистичная бесплатная утилита весом меньше 1 МБ. Запускается без установки (portable-режим). Открывает файл двойным кликом: видите таблицу, переключаете кодировку в меню View → Codepage. Редактировать записи нельзя — только просмотр, поиск и экспорт в TXT. Идеальна для разовой проверки: «что вообще в этом файле».

DBF Viewer Plus — портативная, без установки

DBF Viewer Plus — тоже бесплатная, но более функциональная: поддерживает редактирование записей, фильтрацию, сортировку и экспорт в CSV и XLS. Работает как portable-приложение без установки — достаточно распаковать архив. Поддерживает кодировки cp866 и cp1251, корректно читает Memo-поля.

LibreOffice Calc — лучший бесплатный вариант

LibreOffice Calc открывает DBF нативно: File → Open → выбрать файл. При открытии появится диалог, где можно выбрать кодировку символов — это ключевая функция для работы с кириллицей. LibreOffice поддерживает редактирование и сохранение обратно в .dbf. Подробная пошаговая инструкция — в разделе «Как открыть и сохранить DBF в LibreOffice Calc».

Microsoft Excel (версии до 2013)

Excel 97–2013 открывали DBF напрямую через встроенный ISAM-драйвер dBASE. Если у вас именно такая версия — просто откройте файл через File → Open, выбрав тип «dBASE Files». Для Excel 2016 и новее см. следующий раздел.

Онлайн-просмотр без установки программ

Онлайн-конвертеры позволяют просмотреть содержимое DBF прямо в браузере. Достаточно загрузить файл — сервис отобразит таблицу и предложит скачать результат в CSV или XLSX. Подходит для разового использования. Важно: не загружайте через онлайн-сервисы файлы с персональными данными и конфиденциальной информацией — данные уходят на чужой сервер.

ПрограммаОСБесплатноРедактированиеКодировки cp866/cp1251Онлайн
DBF Viewer 2000WindowsДаНет (просмотр)ДаНет
DBF Viewer PlusWindowsДаДаДаНет
LibreOffice CalcWin/Mac/LinuxДаДаОграниченноНет
DBF CommanderWindowsПробныйДаДаНет
CDBFWindowsПробныйДаДаНет
AnyConvЛюбаяДаНетДа

Как открыть DBF в Excel 2016–2024 (прямой поддержки нет)

!
Почему Excel 2016+ не открывает DBF

Начиная с Excel 2016 Microsoft исключила встроенный драйвер для dBASE (ISAM). Если Excel отказывается открывать DBF — это не ошибка файла. Решение: конвертировать в CSV через LibreOffice или онлайн-конвертер, затем открыть CSV в Excel.

Способ 1: конвертировать в CSV, затем открыть в Excel

Это самый надёжный и быстрый путь для большинства пользователей:

  1. Скачайте и установите LibreOffice (бесплатно, доступен на Windows/Mac/Linux).
  2. Откройте DBF в LibreOffice Calc: меню Файл → Открыть → выберите файл .dbf. При появлении диалога выбора кодировки укажите cp866 или cp1251 (если видите крякозябры — смените кодировку).
  3. Сохраните как CSV: Файл → Сохранить как → Тип файла: «Текст CSV» → кодировка UTF-8 → ОК.
  4. Откройте CSV в Excel: Данные → Из текстового/CSV файла → выберите разделитель «;» или «,» → импортировать.

Результат: полная таблица в Excel со всеми данными и кириллицей в правильной кодировке.

Способ 2: подключение через ODBC

Для опытных пользователей и IT-специалистов: в Windows есть встроенный драйвер Microsoft dBASE ODBC. Он позволяет подключить DBF-файл как источник данных и вытащить данные через Power Query. Путь: Excel → Данные → Получить данные → Из других источников → Из ODBC → выбрать «Microsoft dBASE Driver» → указать папку с файлом. Способ трудоёмкий, но сохраняет типы полей (даты, числа).

Как открыть и сохранить DBF в LibreOffice Calc

LibreOffice Calc — единственная полноценная бесплатная программа, которая читает, редактирует и сохраняет DBF на всех операционных системах. Пошаговый порядок работы:

  1. Откройте файл: запустите LibreOffice Calc → Файл → Открыть (Ctrl+O) → в диалоге смените «Тип файла» на «dBASE» или выберите «Все файлы» и найдите .dbf.
  2. Выберите кодировку: появится диалог «Импорт текстового файла». В поле «Кодировка» выберите «Кириллица (CP866)» для старых DOS-файлов или «Кириллица (Windows-1251)» для файлов из Windows-приложений. Нажмите ОК.
  3. Проверьте данные: просмотрите несколько строк. Если кириллица читается корректно — кодировка выбрана верно. Если крякозябры — закройте и повторите с другой кодировкой.
  4. Редактируйте: щёлкните по ячейке и вносите правки как в обычную таблицу. Изменение типов полей не поддерживается — только содержимое.
  5. Сохраните: Файл → Сохранить (Ctrl+S). LibreOffice предупредит, что формат DBF не поддерживает некоторые возможности — нажмите «Сохранить в текущем формате». Если нужен XLSX — выберите Файл → Сохранить как → «Электронная таблица Excel».

Внутренние ссылки на форматы: если работаете с таблицами и нужно понять чем отличается XLS от XLSX, смотрите наш сравнительный гайд.

Конвертация DBF в CSV, XLSX и другие форматы

Онлайн-конвертеры

Самый быстрый способ без установки программ — онлайн-конвертер. AnyConv поддерживает конвертацию DBF в CSV, XLSX, XLS и другие форматы. Порядок работы: загрузите файл на сайт → выберите целевой формат → нажмите «Конвертировать» → скачайте результат. Ограничение: файлы с персональными данными загружать не рекомендуется.

Через LibreOffice «Сохранить как»

Открыв DBF в LibreOffice Calc (по инструкции выше), выполните Файл → Сохранить как и выберите нужный формат:

  • CSV (Текст CSV) — универсальный текстовый формат, открывается в любом редакторе. При сохранении выберите кодировку UTF-8 и разделитель «;».
  • XLSX (Электронная таблица Excel 2007–365) — если нужен полноценный Excel-файл с форматированием.
  • ODS — нативный формат LibreOffice, открывается в Google Sheets.

Python для разработчиков: библиотека dbfread

Если нужно обработать много DBF-файлов или встроить конвертацию в пайплайн, Python — оптимальный инструмент. Библиотека dbfread читает DBF-файлы напрямую, корректно обрабатывает кодировки и Memo-поля. Установка: pip install dbfread.

Скрипт для конвертации DBF в CSV с кириллицей:

import dbfread import csv # encoding='cp866' для DOS-файлов (1С, ГИБДД), 'cp1251' для Windows-файлов table = dbfread.DBF('data.dbf', encoding='cp866') with open('data.csv', 'w', newline='', encoding='utf-8') as f: writer = csv.DictWriter(f, fieldnames=table.field_names) writer.writeheader() for record in table: writer.writerow(record)

Скрипт читает DBF с кодировкой cp866, конвертирует записи в словари и записывает их в CSV в кодировке UTF-8. После этого CSV без проблем открывается в Excel, Google Sheets и любом текстовом редакторе. Если нужен XLSX вместо CSV, добавьте import pandas as pd и используйте pd.DataFrame(list(table)).to_excel('data.xlsx', index=False).

О работе с большими CSV-файлами после конвертации — смотрите наш гайд как открыть большой CSV-файл.

Кодировка кириллицы в DBF — как исправить крякозябры

Схема преобразования кодировки в DBF-файле

Почему в DBF кириллица отображается как «?» или «крякозябры»

В DBF-файлах кириллица традиционно хранится в одной из двух кодировок:

  • CP866 (DOS-кириллица) — использовалась в dBASE, Clipper, FoxPro под DOS. Характерна для файлов из 1С (старые версии), ГИБДД, налоговых баз. Символы от 0x80 до 0xBF — русский алфавит.
  • CP1251 (Windows-кириллица) — применяется в Visual FoxPro и программах, написанных под Windows. Та же таблица символов, что в большинстве русских Windows-приложений.

Когда программа открывает файл и применяет неверную кодировку (или вообще UTF-8), байты, кодирующие кириллицу, интерпретируются как другие символы — получаются крякозябры. Это не повреждение файла, а ошибка декодирования. Подробнее о природе проблемы кодировок — в нашем материале краказябры: кодировка текстового файла.

Как DBF хранит информацию о кодировке

Байт 0x1D (29-й байт хедера) — идентификатор языкового драйвера (Language Driver ID). Значение 0x26 означает cp866, 0x03 — cp1252, 0x57 — cp1251. LibreOffice и специализированные просмотрщики читают этот байт автоматически. Excel и простые текстовые редакторы его игнорируют.

Как определить кодировку и исправить — пошагово

Если не знаете, какая кодировка в вашем файле, действуйте методом исключения:

  1. Попробуйте cp866 первым — большинство старых российских DBF-файлов из 1С и госсистем используют именно её.
  2. Откройте файл в LibreOffice Calc → в диалоге выбора кодировки выберите «Кириллица (CP866)» → проверьте, читается ли текст корректно.
  3. Если крякозябры остались — закройте файл и повторите открытие, выбрав «Кириллица (Windows-1251)».
  4. Для программного определения: проверьте байт 0x1D в хедере файла. В Python: open('file.dbf','rb').read(32)[29]. Значение 0x26 (38) = cp866, 0x57 (87) = cp1251.
  5. Фиксируйте результат: если определили кодировку, запомните её — все файлы из одного источника (например, одной версии 1С) обычно используют одинаковую кодировку.

Как открыть DBF на Linux и macOS

На Linux и macOS нет специализированных DBF-просмотрщиков, но есть три рабочих пути:

  • LibreOffice Calc — устанавливается через пакетный менеджер (sudo apt install libreoffice на Ubuntu, brew install --cask libreoffice на macOS). Поддерживает DBF нативно с выбором кодировки — лучший вариант для большинства задач.
  • Python dbfreadpip install dbfread, затем сниппет из раздела выше. Работает одинаково на всех платформах, не требует GUI.
  • Онлайн-конвертер — загрузите файл в браузере, скачайте CSV или XLSX. Быстро для разовой задачи без установки программ.

Безопасен ли DBF-файл?

DBF — чистая таблица данных, не исполняется

Формат DBF содержит только структурированные данные: строки и столбцы. В отличие от XLS(X) с макросами, PDF с JavaScript или DOCX с OLE-объектами, DBF не поддерживает никакой исполняемый код и не может содержать макросы или скрипты. Открытие DBF-файла не запускает никаких программ.

Единственный реальный риск при работе с DBF-файлами — утечка данных. Файлы из государственных реестров (ГИБДД, ФНС, Росреестр) могут содержать персональные данные граждан: ФИО, даты рождения, адреса, номера документов. Если вы получили такой файл:

  • Не загружайте его в онлайн-конвертеры без необходимости.
  • Убедитесь, что у вас есть законное основание для работы с этими данными (согласие субъектов или служебная необходимость).
  • После работы — удаляйте файл или храните в защищённом месте.

Читайте также

Частые вопросы о формате DBF

Можно ли открыть DBF прямо в браузере без программ?

Да, через онлайн-конвертеры (AnyConv, dbf.online и аналоги): загружаете файл, смотрите данные или скачиваете CSV/XLSX. Подходит для разового использования. Не загружайте файлы с персональными данными — они уходят на внешний сервер.

Почему Excel 2016/2019/2021/2024 не открывает DBF?

Начиная с Excel 2016 Microsoft удалила встроенный ISAM-драйвер dBASE. Прямое открытие .dbf больше не поддерживается. Решения: конвертировать файл в CSV через LibreOffice или онлайн-сервис, затем открыть CSV в Excel; или подключить DBF через ODBC-драйвер dBASE в Power Query.

Как исправить кириллицу (крякозябры) в DBF?

Откройте файл в LibreOffice Calc и в диалоге выбора кодировки укажите «Кириллица (CP866)» — это правильная кодировка для большинства старых российских DBF (1С, ГИБДД). Если не помогло — попробуйте «Кириллица (Windows-1251)». Байт 0x1D хедера содержит маркер кодовой страницы, но не все программы его читают.

Чем DBF отличается от CSV?

DBF — бинарный формат с хедером: хранит типы полей (строка, число, дата, логическое), длины, индексы и кодировку. CSV — просто текст с разделителями, без схемы и типов. DBF поддерживает поля типа Date и Memo (длинные тексты); CSV хранит всё как строки. DBF в 5–10 раз компактнее CSV для больших числовых таблиц.

Безопасно ли открывать незнакомый DBF-файл?

Да: DBF содержит только табличные данные, не является исполняемым форматом и не поддерживает макросы или скрипты. Открытие .dbf не может запустить вредоносный код. Риск — только утечка данных: файл может содержать персональные данные из реестров.

Можно ли редактировать DBF и сохранять обратно в тот же формат?

Да: DBF Viewer Plus, DBF Commander и LibreOffice Calc поддерживают редактирование и сохранение обратно в .dbf. При сохранении в LibreOffice нужно явно выбрать «Таблица dBASE» в диалоге «Сохранить как». Типы полей и структура при этом сохраняются, но новые типы полей (например, AutoIncrement) добавить нельзя.

Как открыть DBF на Mac или Linux?

LibreOffice Calc работает на обеих платформах и поддерживает DBF нативно с выбором кодировки. Установка: на macOS — через brew или с официального сайта; на Linux — через apt/dnf/pacman. Также можно использовать Python dbfread (pip install dbfread) для скриптового чтения без GUI.