Я экспортирую файл Excel (Excel 2016), содержащий японские символы, в CSV. (Примечание: я не экспортирую в CSV UTF-8 при условии). При этом все японские символы заменяются на '?'

Мой язык Windows/Office - японский / японский и Windows/ язык офиса / - все японское.

Я понимаю, что Excel использует кодовую страницу для сохранения файла CSV в определенной кодировке. Насколько я понимаю, это должен быть Shift-JIS (как кодировка по умолчанию для японского языка). Если это так, то почему потеря информации и замена на '?'

В какой кодировке Excel пытается сохранить CSV-файл ???

(К сведению: если я пытаюсь открыть CSV, Excel по умолчанию пытается открыть CSV в Shift-JIS 932, как и ожидалось)

Примечание. Мне известны обходные пути использования UTF-8. Я заинтересован в понимании выше поведения, больше, чем обходной путь

Спасибо

1 ответ1

0

Excel плохо обрабатывает CSV-кодировки, и всегда так делал.

Экспорт документа в формате CSV с разделением запятыми не использует кодовую страницу вашей локали, но сохраняет символы как ASCII. Символы, которые не могут быть представлены таким образом, экспортируются в виде вопросительных знаков. Только символы в диапазоне ASCII от 0 до 127 гарантированно будут правильно экспортированы.

Причиной этого может быть то, что этот код в Excel был написан еще до того, как Windows поддерживала Unicode, но это всего лишь предположение. В Office полно таких заплаток, и нужно использовать то, что работает.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .