К статье
Практический материал

Справочники и Данные · 11 мин

Чем открыть DBF файл из 1С: подробная инструкция

Как открыть DBF файл из 1С: штатные средства платформы, Excel, LibreOffice, специальные просмотрщики. Кодировки, ошибки, восстановление и конвертация DBF.

Формат DBF остаётся одним из самых распространённых способов обмена данными с 1С: в нём выгружаются прайсы поставщиков, выписки из старых конфигураций, справочники номенклатуры и данные из сторонних учётных систем. При этом двойной клик по такому файлу часто заканчивается вопросом — Windows не знает, какой программой его открыть, а Excel показывает «кракозябры» вместо русского текста.

Проблема в том, что DBF — это не офисный документ, а файл базы данных с табличной структурой и собственной кодировкой. Файлы, созданные 1С, обычно используют кодировку Windows-1251 или CP866 (DOS), и программа-просмотрщик должна уметь её определять. Ниже разобраны рабочие способы: от штатных средств самой 1С до бесплатных утилит, с указанием ограничений каждого варианта.

Что такое DBF и почему его сложно открыть

DBF (DataBase File) — формат табличных файлов, уходящий корнями к СУБД dBase. Каждый файл содержит одну таблицу: заголовок с описанием полей (имя, тип, длина) и записи фиксированной длины. 1С:Предприятие 7.7 хранило в DBF собственные данные, а 1С 8.x использует формат в основном для обмена: выгрузок, загрузок, интеграций с банк-клиентами и торговым оборудованием.

У формата есть особенности, которые мешают «просто открыть» файл. Во-первых, кодировка текста не всегда записана в заголовке, поэтому программа может неверно интерпретировать русские буквы. Во-вторых, рядом с основным файлом могут лежать служебные файлы — например, индексы CDX/MDX или файл memo-полей DBT/FPT, без которых часть данных не прочитается. В-третьих, стандартный DBF ограничивает длину имён полей 10 символами, из-за чего названия колонок выглядят обрезанными — это норма формата, а не повреждение.

Способ 1. Открыть DBF средствами самой 1С

Если файл нужно не просто посмотреть, а загрузить в базу, надёжнее всего работать через 1С. В типовых конфигурациях (например, «Управление торговлей», «Бухгалтерия») есть универсальные обработки загрузки табличных данных, которые принимают DBF. Путь обычно выглядит так: раздел «НСИ и администрирование» или «Покупки» → обработка загрузки данных → указание файла → сопоставление колонок полям справочника.

Для нетиповых задач используется объект XBase во встроенном языке. Он позволяет открыть файл, перебрать записи, прочитать значения полей и записать их в справочники или документы. Это стандартный механизм платформы, он не требует внешних компонентов и корректно работает с кодировками, если указать её явно.

bsl
ДБФ = Новый XBase;
ДБФ.Кодировка = КодировкаXBase.ANSI;
ДБФ.ОткрытьФайл("C:\Обмен\price.dbf");
Пока ДБФ.Следующая() Цикл
    Сообщить(ДБФ.NAME + " — " + ДБФ.PRICE);
КонецЦикла;
ДБФ.ЗакрытьФайл();

Если при чтении русский текст превращается в нечитаемые символы, смените кодировку: вместо ANSI укажите OEM (это CP866, характерна для старых выгрузок из 1С 7.7 и DOS-программ). Проверить правильность проще всего на одном известном значении — например, на названии товара, которое точно есть в файле.

Способ 2. Открыть DBF в Excel

Microsoft Excel умеет открывать DBF напрямую: «Файл → Открыть», в фильтре типов выбрать «Все файлы» или «Файлы dBASE». Современные версии Excel при этом могут не спросить кодировку и показать русский текст с ошибками. В этом случае надёжнее открывать файл через мастер импорта: «Данные → Получить данные → Из файла», либо сначала переименовать копию файла и открыть её как текстовый источник с явным указанием кодировки 1251 (Кириллица Windows).

Важное ограничение: Excel при сохранении обратно в DBF может потерять типы полей, обрезать длинные строки и изменить структуру. Поэтому правило простое — Excel годится для просмотра и анализа, но не для редактирования файла, который потом вернётся в 1С или другую учётную систему. Перед любыми экспериментами сделайте копию исходника.

Способ 3. LibreOffice Calc и специальные просмотрщики

Бесплатный LibreOffice Calc открывает DBF штатно и при открытии предлагает выбрать кодировку — это самый быстрый способ посмотреть файл без 1С. Если текст отображается неверно, закройте файл без сохранения и откройте заново, выбрав другую кодировку: Cyrillic Windows (1251) или Cyrillic DOS/OS2 (866).

Для регулярной работы удобнее специализированные утилиты класса DBF Viewer: они показывают структуру полей, умеют фильтровать записи, конвертировать в CSV/XLSX и восстанавливать повреждённые заголовки. При выборе такой программы скачивайте её только с официального сайта разработчика — бесплатные просмотрщики с «софтовых сборников» нередко содержат рекламные модули.

Сравнение инструментов

1С (XBase, обработки загрузки)

Когда данные нужно загрузить в базу или выгрузить из неё. Требует доступа к конфигурации, зато сохраняет структуру и кодировку.

Excel

Быстрый просмотр и анализ. Риск порчи кодировки при открытии и потери структуры при сохранении.

LibreOffice Calc

Бесплатный просмотр с выбором кодировки. Не подходит для записи изменений обратно в учётную систему.

DBF Viewer / аналоги

Просмотр структуры, фильтрация, конвертация, работа с большими файлами. Требует установки сторонней программы.

Как определить кодировку и исправить «кракозябры»

Подавляющее большинство проблем с открытием DBF из 1С — это неверная кодировка. Признак простой: вместо русских букв видны символы вроде «РўРѕРІР°СЂ» (файл в UTF-8 прочитан как 1251), «Џа®ўар» или наборы латиницы с умляутами (CP866 прочитана как 1251).

Порядок действий: откройте файл в программе, которая позволяет явно выбрать кодировку (LibreOffice, DBF Viewer, XBase в 1С), и последовательно переберите три варианта — Windows-1251, CP866 (OEM), UTF-8. Правильный вариант определяется по читаемости любого заведомо русского значения. Менять кодировку нужно при открытии, а не перекодировать файл «вслепую» конвертерами: повторное перекодирование необратимо портит данные.

Порядок действий при неверной кодировке
  1. 1
    Сделайте копию DBF-файла и работайте только с ней
  2. 2
    Откройте файл в LibreOffice Calc или DBF Viewer
  3. 3
    При запросе кодировки выберите Cyrillic Windows (1251)
  4. 4
    Если текст нечитаем — закройте без сохранения и откройте снова с Cyrillic DOS (866)
  5. 5
    Проверьте читаемость на известном значении из файла
  6. 6
    Запомните подошедшую кодировку и указывайте её при загрузке в 1С

Файл не открывается: повреждение и смежные проблемы

Если программы сообщают «не является файлом DBF» или показывают пустую таблицу, возможны несколько причин. Файл может быть обрезан при копировании из почты или архива — проверьте его размер и сравните с исходным, если есть возможность. Заголовок мог повредиться при аварийной записи: тогда помогут утилиты восстановления DBF или чтение через XBase с игнорированием ошибок структуры.

Отдельный случай — когда DBF является частью многотабличного набора (например, выгрузка из 1С 7.7 с индексами и memo-файлами). Убедитесь, что рядом лежат сопутствующие файлы с тем же именем: CDX, MDX, DBT, FPT. Отсутствие memo-файла даёт пустые значения в длинных текстовых полях, хотя сама таблица открывается нормально.

Контрольные точки

Как проверить результат

Читаемость текста
Норма

Русские названия отображаются корректно

Тревожный признак

Символы-«кракозябры» — неверная кодировка

Количество записей
Норма

Число строк совпадает с ожидаемым объёмом выгрузки

Тревожный признак

Записей заметно меньше — файл обрезан или повреждён

Типы полей
Норма

Числа — числами, даты — датами

Тревожный признак

Всё стало текстом — структура потеряна при пересохранении

Длинные тексты
Норма

Поля с описаниями заполнены

Тревожный признак

Поля пустые — отсутствует memo-файл (DBT/FPT)

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

Если DBF нужен только как источник для анализа, удобно один раз конвертировать его в XLSX или CSV и дальше работать в привычном инструменте. LibreOffice Calc сохраняет открытый DBF в оба формата, DBF-просмотрщики обычно имеют функцию экспорта, а 1С через XBase позволяет выгрузить данные в табличный документ и сохранить его в Excel.

При конвертации в CSV обязательно сохраняйте файл в кодировке UTF-8 — так его без проблем откроют и Excel, и веб-сервисы. Учтите, что CSV не хранит типы данных: даты и числа с ведущими нулями (например, коды и артикулы) при повторном открытии могут отобразиться неверно, поэтому для загрузки обратно в 1С лучше использовать XLSX или исходный DBF.

Типичные ошибки
01
Сохранение DBF из Excel поверх оригинала — теряются типы полей и структура, файл перестаёт загружаться в 1С
02
Перекодирование файла конвертером без проверки — двойная перекодировка необратимо портит русский текст
03
Копирование только DBF без файлов CDX/DBT — теряются индексы и содержимое memo-полей
04
Попытка открыть файл, который ещё дозаписывается выгрузкой, — читается часть данных или ошибка доступа
05
Игнорирование ограничения в 10 символов на имена полей — при обратной загрузке колонки не сопоставляются
Маршрут решения

Как выбрать действие

Нужно просто посмотреть содержимое один разОткройте файл в LibreOffice Calc с выбором кодировки 1251 или 866
Нужно загрузить данные в базу 1СИспользуйте типовую обработку загрузки или XBase с явным указанием кодировки
Нужно регулярно просматривать и фильтровать DBFУстановите специализированный DBF-просмотрщик с официального сайта
Файл повреждён или обрезанЗапросите исходник заново; если невозможно — попробуйте утилиты восстановления DBF на копии
Данные нужны для анализа вне 1СКонвертируйте в XLSX или CSV (UTF-8) и работайте с копией
Итог

Что важно запомнить

DBF из 1С открывается самой 1С (XBase, обработки загрузки), LibreOffice Calc, Excel и DBF-просмотрщиками. Главная причина проблем — кодировка: перебирайте 1251 и 866 при открытии. Работайте только с копией файла и не сохраняйте DBF из офисных программ поверх оригинала, если он вернётся в учётную систему.

Частые вопросы

Почему Excel показывает иероглифы вместо русского текста в DBF?

Excel не всегда запрашивает кодировку при открытии DBF и применяет системную по умолчанию. Откройте файл через импорт данных с явным указанием кодировки 1251 (Кириллица Windows) или используйте LibreOffice Calc, где выбор кодировки предлагается при каждом открытии.

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

Существуют онлайн-просмотрщики DBF, но загружать в них учётные данные (прайсы, контрагентов, персональные данные) небезопасно — файл уходит на чужой сервер. Для конфиденциальных выгрузок используйте локальные инструменты: LibreOffice, 1С или десктопный просмотрщик.

Чем отличаются кодировки ANSI и OEM при чтении DBF в 1С?

ANSI соответствует Windows-1251 — её используют выгрузки из Windows-программ и 1С 8.x. OEM — это CP866, кодировка DOS, характерная для файлов из 1С 7.7 и старых DOS-приложений. Если при ANSI текст нечитаем, переключитесь на OEM.

Рядом с DBF лежат файлы CDX, DBT, FPT — они нужны?

Да, это связанные файлы: CDX/MDX — индексы, DBT/FPT — содержимое memo-полей (длинных текстов). Копируйте и храните их вместе с основным DBF. Без memo-файла таблица откроется, но длинные текстовые поля будут пустыми.

Как загрузить DBF-прайс поставщика в 1С?

В типовых конфигурациях есть обработки загрузки данных из табличных файлов: укажите DBF-файл, сопоставьте его колонки полям справочника номенклатуры и выполните загрузку. Если колонки не совпадают по именам из-за ограничения в 10 символов, сопоставляйте их вручную по содержимому.

Файл открывается, но записей меньше, чем должно быть. Что делать?

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