%20%D0%BC%D0%B0%D1%81%D1%82%D0%B5%D1%80%D0%B0%20%D0%B8%D0%BC%D0%BF%D0%BE%D1%80%D1%82%D0%B0%20%D1%82%D0%B5%D0%BA%D1%81%D1%82%D0%B0%20%D0%BD%D0%B0%20UTF-8%20(65001%3A%20Unicode).png)
Я использую различные инструменты для регулярной подготовки данных для веба. На одном этапе мне нужно открыть CSV в Excel, внести изменения и сохранить файл.
Есть ли способ заставить Excel принять кодировку UTF-8 и сохранять файлы в этой кодировке?
решение1
Я ответил на аналогичный вопрос наКодировка символов по умолчанию для текстового мастера Excel?.
Я нашел свой ответ наИзменение типа источника импорта текста по умолчанию в Excel.
- Закройте Excel, если он открыт.
- ОткройРедактор реестра.
- Перейдите кHKEY_CURRENT_USER → Программное обеспечение → Microsoft → Office → ▒▒ → Excel → Параметры, где ▒▒ — это ваша версия Office, скорее всего, это самое большое число, которое вы там видите.
- Щелкните правой кнопкой мыши по пустому месту с правой стороны и выберитеНовый → DWORD.
- Назовите элементDefaultCPGи нажмите Enter, чтобы сохранить.
- Щелкните правой кнопкой мышиDefaultCPGи выберитеИзменить.
- УстановитьБазакДесятичная дробь.
- ДляЦенность данных, входить65001чтобы установить значение по умолчанию UTF-8. Для других кодировок используйте идентификатор кодовой страницы, который можно найти в мастере импорта текста в Excel или вэтот список.
- НажмитеХОРОШО.
Как говорит Василь в комментарии к этому вопросу, если ваш файл на самом деле не в формате UTF-8, технически вы можете захотеть преобразовать символы в файле в нужную вам кодировку перед открытием в Excel. Для моих целей, однако, UTF-8 достаточно хорошо справляется с отображением неповрежденных символов.
Не работает? Убедитесь, что вы установили десятичную систему исчисления (Шаг 7).
решение2
Кажется, чтоМетка порядка байтовтребуется для программного обеспечения Microsoft Office.
Используя Notepad++, преобразуйте CSV с помощью меню: Кодировка -> Преобразовать в UTF8-BOM.
Используя
sed
утилиту Unix, доступную вcmderилиGit для Windows. ВидетьДобавление BOM в файлы UTF-8.sed -i '1s/^/\xef\xbb\xbf/' file.csv
- Протестировано с Excel 2016
- Вот что avwtp имел в виду в своихотвечать.
решение3
Один из простых способов изменить кодировку Excel ANSI на UTF-8 — открыть файл .csv в блокноте, затем выбрать Файл > Сохранить как. Теперь внизу вы увидите, что кодировка установлена на ANSI, измените ее на UTF-8 и сохраните файл как новый файл, и все готово.
решение4
Вам необходимо использовать File > Import
опцию и начать с пустого документа и указатьUTF-8
но это далеко не оптимально, чтобы сделать это настройкой по умолчанию для всех файлов, в любом случае нет необходимости вращать файлы вокруг Google Drive или LibreOffice. Настройки по умолчанию просто плохо выбраны, и невозможность изменить это раздражает.
Связанный
Как установить кодировку символов при открытии Excelно не находит возможности изменить настройки по умолчанию таким образом, чтобы все файлы автоматически открывались в формате UTF-8 вместо формата Macintosh в OSX
Как изменить параметр файла по умолчанию на UTF-8 вместо параметра файла Macintoshв Apple.SE.