2012-08-24 21:25:06 +0000 2012-08-24 21:25:06 +0000
21
21
Advertisement

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

Advertisement

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

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

Проблема в том, что файл данных HUGE, и мы не можем разумно это сделать, поэтому я надеялся, что есть способ сохранить его. Мы попробовали экспортировать как Unicode и ASCII безрезультатно. Мы также пытались загрузить документы google, и заново сохранить их, однако это также ломает эти символы.

Advertisement

Ответы (13)

12
12
12
2013-08-29 19:11:05 +0000

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

6
6
6
2012-10-30 00:40:31 +0000

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

4
Advertisement
4
4
2013-09-04 20:46:55 +0000

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

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

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

3
3
3
2013-12-19 21:37:59 +0000

Вот что мне подходит:

  1. Исправить данные в Excel или CSV
  2. Сохранить файл как Unicode Text
  3. Откройте NOTEPAD
  4. Откройте только что сохраненный файл в формате Юникод, используя формат NOTEPAD
  5. С помощью курсора выделите пустую область, в которой находится единственная вкладка 5a. Используйте промежуток между именем Acquire Id и типом запроса, поскольку он содержит ОДНУ ТАБЛИЦУ!
  6. Нажмите Cnrl-C, чтобы скопировать символ табуляции 0x2 и 7. Нажмите Cnlr-H, чтобы открыть функциональное окно Заменить
  7. Щелкните в текстовом поле Find What (Найти какое) и введите Cnlr-V, чтобы вставить вкладку
  8. Нажмите в текстовом поле Replace With Text box (Заменить текстом) и введите запятую
  9. Нажмите кнопку Заменить, чтобы протестировать ее один раз. Подтвердите, что вкладка в файле заменена запятой 0x2 и 11. Нажмите Заменить все 0x2 и 12. Нажмите Отменить
  10. Сохраните файл и выйдите из раздела
  11. В Проводнике Windows измените расширение файла на .csv.
3
Advertisement
3
3
2016-01-14 15:29:13 +0000

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

1
1
1
2016-05-06 09:03:48 +0000
  1. Скачать и установить Unicode CSV Addin для excel fro https://github.com/jaimonmathew/Unicode-CSV-Addin
  2. Сохраните csv из нового меню “Unicode CSV”, как показано на рисунке ниже.

1
Advertisement
1
1
2016-08-02 10:18:07 +0000

Решение:

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

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

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

Я столкнулся с подобной проблемой при импорте csv продуктов с дробью в WooCommerce, которая получала отказ из-за “?” символов ошибок. Это связано с тем, что CSV-файл не был закодирован в UTF-8. КАЧЕСТВЕННО, даже после сохранения CSV-файла в Excel в кодировке UTF-8 он все равно не работал.

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

0
0
0
2018-02-01 13:48:54 +0000

для ™ Я нашел решение. В файле .xlsx заменить все “™” на “&tr-ade;”. удалить - из замены на “с”. Сохраните файл как .csv и все готово. желаю, чтобы он работал на вас.

0
Advertisement
0
0
2018-03-07 16:11:22 +0000

На компьютере Mac это то, что работало на меня.

В Excel выберите save as, а затем из выпадающего списка выберите windows comma separated (CSV).

Это просто работает!!!!

0
0
0
2020-01-10 13:45:18 +0000

Сохранение как CSV (Comma Delimited), как Techie007 упоминалось выше, будет правильно захватить большинство международных символов, однако, у меня все еще были проблемы с некоторыми, чтобы включить Ł, ć, и ń (могут быть и другие). 0x2 и 0x2 и я был немного удивлен, увидев, что функция EXCEL VBA ASC возвращает код ascii, связанный с L, c и n соответственно для этих международных символов. Мой несколько неудовлетворительный подход заключался в написании короткого макроса для преобразования всех символов перед сохранением в .csv. [Примечание: ASC для подавляющего большинства распространенных международных символов, таких как é или á, будет работать просто отлично].

0
Advertisement
0
0
2015-07-21 13:41:23 +0000

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

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

0
0
0
2014-06-25 11:47:47 +0000

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

Со ссылкой: 0x2 и 0x2 и > 1 Нажмите на стартовом меню 0x2 и > 0x2 и > 2-выберите панель управления 0x2 и > 0x2 и > 3-поиск региональных и языковых опций на классическом режиме или введите его имя в строке поиска в правом верхнем углу окна панели управления 0x2 и > 0x2 и > 4-Нажмите на вкладку “Дополнительно” и нажмите на локали 0x2 и > 0x2 и > 5-Нажмите на персидском или арабском языке или на нужную программу кодирования UTF-08, которую вы хотели бы сохранить с Excel в CSV

0
Advertisement
0
0
2018-05-30 14:20:21 +0000

Сохранить как Unicode Переименовать файл как .csv _COPY12__shxTg )

Похожие вопросы

6
13
9
10
8
Advertisement
Advertisement