Вместо русских букв в CSV — кракозябры
Как это выглядит
Файл открывается, структура на месте, но вместо русского текста — «РЎС‡С‘С‚» или «Ð¡Ñ‡ÐµÑ‚». Числа при этом читаются нормально.
Коротко
Файл записан в UTF-8, а Excel открыл его в однобайтовой кодировке системы. Данные не испорчены — испорчено только отображение, и это чинится повторным открытием с правильной кодировкой.
Почему так происходит
01UTF-8 без BOM
BOM — три служебных байта в начале файла, по которым Excel понимает, что перед ним UTF-8. Без них Excel на русской Windows читает файл в однобайтовой кодировке, и каждый двухбайтовый русский символ распадается на два неверных.
02Файл записан в Windows-1251, а открыт как UTF-8
Обратная ситуация, чаще всего при выгрузке из старых учётных систем. Признак — не «РЎС‡», а вопросительные знаки и ромбы вместо букв.
03Двойной щелчок вместо импорта
При открытии двойным щелчком Excel не спрашивает кодировку и берёт системную. Мастер импорта позволяет выбрать её явно.
Как понять, что причина именно эта
- Откройте файл в «Блокноте»: если там нормальный русский текст, проблема в Excel, а не в файле.
- Посмотрите на характер искажений: «РЎС‡» — файл в UTF-8, а читается как 1251; ромбы со знаком вопроса — наоборот.
- В «Блокноте» через «Сохранить как» видна текущая кодировка файла в выпадающем списке.
Как починить
Импорт с явным выбором кодировки
- 1.Данные → Получить данные → Из файла → Из текста/CSV.
- 2.В поле «Источник файла» выберите «65001: Юникод (UTF-8)».
- 3.Убедитесь, что предпросмотр показывает русский текст, и загрузите.
не чинит: Придётся повторять для каждого файла, пока источник не начнёт добавлять BOM.
Пересохранить файл с BOM
- 1.Откройте CSV в «Блокноте».
- 2.Файл → Сохранить как → кодировка «UTF-8 с BOM».
- 3.После этого файл откроется двойным щелчком корректно.
не чинит: Меняет исходный файл. Если его дальше читает другая программа, проверьте, что она переносит BOM.
Когда мы не нужны
Кракозябры — не проблема распознавания. Данные уже извлечены, испорчено только отображение. Никакой сервис здесь не нужен: хватит импорта с указанием кодировки.
Что с этим делает наша выгрузка
Наш CSV отдаётся в UTF-8 и с BOM в начале файла — именно поэтому он открывается двойным щелчком без кракозябр. Если вы всё же их видите, файл, скорее всего, прошёл через промежуточную обработку, которая BOM срезала.
Вопросы
Данные повреждены безвозвратно?
Нет. Байты в файле не меняются от того, как их показал Excel. Достаточно открыть файл заново с правильной кодировкой.
Почему числа читаются, а буквы нет?
Цифры и латиница в UTF-8 занимают один байт и совпадают с однобайтовыми кодировками. Кириллица занимает два байта, и именно она распадается.
Если ошибка не в Excel, а в самих документах
Пилот на 30 дней: пришлите самый неудобный счёт, разберём вручную под ваш формат и вернём готовую таблицу.
Первый счёт разбираем вручную под ваш формат. Списание разовое, автопродления нет. Источник перехода: seo/oshibki/krakozyabry-v-csv.
Другие ошибки