Excel уничтожает специальный символ при сохранении как CSV

Я работаю над проектом, который использует CSV-файл, предоставленный клиентом для заполнения базы данных. Клиент должен создать электронную таблицу, а затем сохранить ее как CSV для загрузки, которая затем анализируется в базе данных.

Проблема в том, что всякий раз, когда клиент сохраняет таблицу Excel в виде файла MS-DOS .csv, многие специальные символы преобразуются в вопросительные знаки «?» (Такие символы, как «/). Однако, если мы откроем файл CSV и заменим каждый справа на правый символ, он отлично работает.

Проблема в том, что файл данных ОГРОМНЫЙ, и мы не можем это сделать разумно, поэтому я надеялся, что есть способ его сохранить. Мы попытались экспортировать Unicode и ASCII безрезультатно. Мы также попытались загрузить в Google документы и повторно сохранить, однако, это также нарушает эти символы.

Убедитесь, что вы выбрали сохранение как CSV (Comma Delimited) а не CSV (MS-DOS) , поскольку DOS не поддерживает символы UTF-8.

Возможным обходным решением является сохранение его в виде Unicode Text (в 2007 году он не уверен в предыдущих выпусках), который сохраняет его в виде текстового файла, разделенного табуляцией.

Этот файл сохранил мои символы юникода (в моем случае я работал с азиатскими символами ), создавая текстовый файл с разделителями, который затем можно запускать через внешние инструменты для преобразования в csv, если это необходимо.

Однако у моего ввода не было вкладок, встроенных в каждую ячейку, и я не уверен, как это будет обрабатываться.

Я обнаружил, что проблема с потерянным символом происходит только (в моем случае) при сохранении из формата xlsx в формате csv. Сначала я попытался сохранить файл xlsx в xls, а затем в csv. Это действительно сработало.

Вот что работает для меня:

  1. Корректировка данных в Excel или CSV
  2. Сохранить файл Как текст в Юникоде
  3. Открыть NOTEPAD
  4. Откройте файл Unicode, который вы только что сохранили, используя NOTEPAD
  5. Используйте курсор, чтобы выделить пустую область, содержащую одну вкладку 5a. Используйте пробел между идентификатором получения и типом запроса, потому что он содержит ONE TAB!
  6. Нажмите Cnrl-C, чтобы скопировать символ табуляции
  7. Тип Cnlr-H, чтобы открыть функциональное поле Заменить
  8. Нажмите в текстовом поле «Найти» и введите Cnlr-V, чтобы вставить вкладку
  9. Щелкните в поле «Заменить с текстом» и введите запятую
  10. Нажмите «Заменить», чтобы проверить его один раз. Подтвердить, что вкладка в файле заменена запятой
  11. Нажмите «Заменить все»
  12. Нажмите Отмена
  13. Сохранить файл и выйти
  14. В проводнике Windows измените расширение файла на .csv

У меня была эта проблема некоторое время, и, наконец, посвятил некоторое время, чтобы понять это! Я смог (по-видимому) исправить проблему, сохранив ее как «Windows Comma Separated (.csv)». Я попробовал его из .xlsx и .xls, оба были конвертированы в .csv. Надеюсь, что это поможет – сообщите мне, если возникнут проблемы с этим методом. Я отчитаю, если я увижу что-нибудь в течение следующих нескольких недель.

Решение:

  1. Откройте файл CSV в Блокноте (вы заметите, что он говорит ANSI), а затем сохраните его как UTF-8 в Блокноте.

  2. Затем импорт должен работать. Если, однако, вы снова откроете его в Excel и просто сохраните его, это не сработает, потому что Excel, по-видимому, не может закодировать в UTF-8.

  3. Другой вариант – работать с вашим CSV-файлом на http://www.LibreOffice.org (бесплатно), который может правильно кодироваться в UTF-8 (я сам этого не пробовал).

Я столкнулся с аналогичной проблемой с импортом csv продуктов с фракциями в WooCommerce, который отклонялся из-за «?» Символы ошибки. Это связано с тем, что файл CSV не был закодирован в UTF-8. ОДНАКО, даже после сохранения CSV-файла в Excel с кодировкой UTF-8 он все равно не работает.

После покраски через несколько форумов, кажется, что хотя Excel дает возможность кодировать как UTF-8 – когда SAVING AS CSV, Excel автоматически преобразует его обратно в ANSI, даже если вы выбираете UTF-8.

Даже я столкнулся с проблемой со специальными символами при загрузке японских терминов в формате .csv. Однако, когда я сохранил CSV-файл в текстовом формате (с разделителями табуляции), японские символы, где заполняются отлично. Затем я просто скопировал данные из текстового файла и вставил их в электронную таблицу. Хорошо работает !!!

Спасибо, Вайшах

Найдено наилучшее решение: http://woshka.com/blog/microsoft/microsoft-excel/solve-the-problem-saving-excel-csv-format-with-utf-8-unicode-encoding.html

От ссылки:

1-Щелкните в меню «Пуск»

2-Выберите панель управления

3-Найти региональные и языковые параметры в классическом режиме или ввести его имя в строке поиска в правом верхнем углу окна панели управления

4-Щелкните вкладку «Дополнительно» и выберите локали

5-Click на персидском или арабском языке или желаемую программу кодирования UTF-08, которую вы хотите сохранить с помощью Excel в CSV

  1. Загрузите и установите Unicode CSV Addin для Excel.
  2. Сохраните csv из нового меню «Unicode CSV», как показано на рисунке ниже.

Введите описание изображения здесь

  • Удаление определенных строк / столбцов из excel
  • Изменение цвета ячейки на основе другого значения ячейки
  • Как изменить формат даты с dd-mm-yyyy на dd-mm-yy в строке формул MS-EXCEL?
  • Создать% от нефильтрованного итога в Excel
  • MS Office 2007 - изменение языка отображения пользовательского интерфейса с немецкого языка на английский
  • Цвета ячеек в зависимости от значения
  • Как назначить строки в несколько раз (Excel / Google Docs)
  • Excel условное форматирование строки
  • Как сделать радарную диаграмму пирога
  • Как получить Excel AutoFill «расширенный» шаблон?
  • Как предотвратить печать ячеек в Excel
  • Давайте будем гением компьютера.