DocFlow

Вместо русских букв в CSV — кракозябры

Как это выглядит

Файл открывается, структура на месте, но вместо русского текста — «РЎС‡С‘С‚» или «Ð¡Ñ‡ÐµÑ‚». Числа при этом читаются нормально.

Коротко

Файл записан в UTF-8, а Excel открыл его в однобайтовой кодировке системы. Данные не испорчены — испорчено только отображение, и это чинится повторным открытием с правильной кодировкой.

Почему так происходит

  1. 01UTF-8 без BOM

    BOM — три служебных байта в начале файла, по которым Excel понимает, что перед ним UTF-8. Без них Excel на русской Windows читает файл в однобайтовой кодировке, и каждый двухбайтовый русский символ распадается на два неверных.

  2. 02Файл записан в Windows-1251, а открыт как UTF-8

    Обратная ситуация, чаще всего при выгрузке из старых учётных систем. Признак — не «РЎС‡», а вопросительные знаки и ромбы вместо букв.

  3. 03Двойной щелчок вместо импорта

    При открытии двойным щелчком Excel не спрашивает кодировку и берёт системную. Мастер импорта позволяет выбрать её явно.

Как понять, что причина именно эта

Как починить

Импорт с явным выбором кодировки

  1. 1.Данные → Получить данные → Из файла → Из текста/CSV.
  2. 2.В поле «Источник файла» выберите «65001: Юникод (UTF-8)».
  3. 3.Убедитесь, что предпросмотр показывает русский текст, и загрузите.

не чинит: Придётся повторять для каждого файла, пока источник не начнёт добавлять BOM.

Пересохранить файл с BOM

  1. 1.Откройте CSV в «Блокноте».
  2. 2.Файл → Сохранить как → кодировка «UTF-8 с BOM».
  3. 3.После этого файл откроется двойным щелчком корректно.

не чинит: Меняет исходный файл. Если его дальше читает другая программа, проверьте, что она переносит BOM.

Когда мы не нужны

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

Что с этим делает наша выгрузка

Наш CSV отдаётся в UTF-8 и с BOM в начале файла — именно поэтому он открывается двойным щелчком без кракозябр. Если вы всё же их видите, файл, скорее всего, прошёл через промежуточную обработку, которая BOM срезала.

Вопросы

Данные повреждены безвозвратно?

Нет. Байты в файле не меняются от того, как их показал Excel. Достаточно открыть файл заново с правильной кодировкой.

Почему числа читаются, а буквы нет?

Цифры и латиница в UTF-8 занимают один байт и совпадают с однобайтовыми кодировками. Кириллица занимает два байта, и именно она распадается.

Пилот · 1 990 ₽ за 30 дней

Если ошибка не в Excel, а в самих документах

Пилот на 30 дней: пришлите самый неудобный счёт, разберём вручную под ваш формат и вернём готовую таблицу.

Первый счёт разбираем вручную под ваш формат. Списание разовое, автопродления нет. Источник перехода: seo/oshibki/krakozyabry-v-csv.