Как изменить кодировку csv файла на utf 8
Перейти к содержимому

Как изменить кодировку csv файла на utf 8

  • автор:

Как перевести файл csv из 1251 в utf-8

Писал код который из нескольких csv файлов выводил данные в терминал, но один из шести csv файлов оказался 1251 а не utf-8, изменить кодировку через блокнот у меня не получается тк файл слишком велик, подскажите способ как можно изменить кодировку или вместить в цикл изменение кодировки Яп python если что

Отслеживать
задан 31 мар в 4:20
25 4 4 бронзовых знака

А «великий файл», это сколько в граммах(байтах)? А то блокнот очень «хилый» редактор, встроенный редактор FAR, или Notepad++ довольно большие файлы неспешно, но «переваривали».

2 апр в 5:01

1 ответ 1

Сортировка: Сброс на вариант по умолчанию

Если вам нужно изменить кодировку csv файлов при чтении в Python, вы можете воспользоваться модулем chardet для определения текущей кодировки каждого файла, а затем использовать модуль csv для чтения,конвертирования и записи данных в требуемую кодировку.

Ниже приведен пример кода, который демонстрирует этот подход:

import csv import chardet # Список csv файлов для чтения csv_files = ["file1.csv", "file2.csv", "file3.csv"] # Цикл для обработки каждого файла for file_path in csv_files: # Определение текущей кодировки файла with open(file_path, 'rb') as f: raw_data = f.read() encoding = chardet.detect(raw_data)['encoding'] # Чтение данных из файла и конвертирование в требуемую кодировку (utf-8) with open(file_path, 'r', encoding=encoding) as f: reader = csv.reader(f) for row in reader: # Ваши действия с данными, например, вывод в терминал print(row) # Опционально: запись данных в новый файл с требуемой кодировкой # with open("new_" + file_path, 'w', encoding='utf-8') as f: # writer = csv.writer(f) # for row in reader: # # Ваши действия с данными, например, запись в новый файл # writer.writerow(row) 

В этом примере сначала определяется текущая кодировка каждого файла с помощью модуля chardet, затем данные считываются из каждого файла и преобразуются в требуемую кодировку с использованием модуля csv. Данные могут быть обработаны или записаны в новый файл с требуемой кодировкой, если это необходимо.

Как изменить кодировку csv файла на utf 8

07.04.2024 15:22

Комментарий

Спасибо огромное!

30.01.2024 16:37

Комментарий

���� огромное спасибо

07.09.2023 15:53

Комментарий

дай вам бох здоровья))

07.02.2023 14:41

Комментарий

Не понял, как импортировать из xls.

21.10.2022 11:20

Комментарий

Спасибо, этот метод сработал!

11.07.2022 14:39

Комментарий

ладно, беру слова обратно, если выбрать добыть данные из файла CSV? то они откроются, но этот ответ в вашей статье все таки больше похож на разбивку из текста

Ответ разработчика:

Благодарим за обратную связь.

Как изменить кодировку csv файла на utf 8

Здравствуйте, каким образом можно открыть CSV файл с кодировкой utf-8, отредактировать там необходимые ячейки, после чего закрыть и сохранить в такой же кодировке с помощью макроса.

Пользователь
Сообщений: 3679 Регистрация: 23.12.2012
27.09.2022 15:28:27

Самый простой вариант — использовать для этой задачи бесплатный офисный пакет типа OpenOffice
(где, в отличие от Excel, вроде бы кодировка utf-8 используется по умолчанию)

Пользователь
Сообщений: 6559 Регистрация: 05.02.2014
27.09.2022 15:36:07
Пользователь
Сообщений: 4837 Регистрация: 06.01.2013
27.09.2022 17:31:23
)) Матрос дал ссылку на сайт Игоря, а Игорь дал отсылку на OpenOffice )
Изменено: New — 27.09.2022 17:33:06
Пользователь
Сообщений: 6559 Регистрация: 05.02.2014
27.09.2022 17:44:03
Ещё бы на сайте OpenOffice появилась ссылка на сайт Андрея Нечитаева ))
Пользователь
Сообщений: 4661 Регистрация: 10.09.2017
27.09.2022 17:54:21

OpenOffice давно уже почил в бозе.
Так что ссылаться надо на LibreOffice (LO).
При написании программ на LO Basic следует иметь в виду, что объектная модель LO Calc кардинально отличается от объектной модели Microsoft Excel.
Что касается Excel, то на сайте тема файлов .csv затрагивается весьма часто.

При экспорте данных в формате .csv следует учесть, что встроенные средства сохранения файла в формате .csv не поддерживают кодировку utf-8. Если же вывести в кодировке, например, windows-1251, а затем изменить кодировку файла, то будут проблемы с теми символами юникода, которые не представлены в кодовой таблице windows-1251 (если таковые есть).

Преобразование Excel файла в CSV UTF-8

Для лучшего отображения контактов в Адресной книге Robovoice преобразуйте ваш Excel документ в формат CSV UTF-8.

Последние версии MS Office (2016, 2019)

  1. Откройте ваш текстовый документ.
  2. Выберите Файл -> Сохранить Как .
  3. Выберите папку на вашем компьютере для сохранения копии вашего файла.
  4. В открывшемся менеджере файлов выберите Тип файла -> CSV UTF-8 (разделитель запятая) -> Сохранить.
  5. После выбора у вас появится диалоговое окно ниже, подтвердите преобразование, нажав Да .Файл будет сохранен в выбранную вами папку для последующей загрузки контактов в Адресную книгу.
  6. В Robovoice выберите разделитель – Запятая , либо Точка с запятой/Табуляция.
  7. Перетащите преобразованный файл и сопоставьте поля с вашими значениями.

информация

Если при сопоставлении полей все поля съехали в одну колонку, закройте окно, выберите другой разделитель и заново загрузите файл.

Более старые версии MS Office (2003, 2007, 2010, 2013)

  1. Откройте ваш текстовый документ.
  2. Выберите Файл -> Сохранить Как .
  3. Выберите папку на вашем компьютере для сохранения копии вашего файла.
  4. В открывшемся менеджере файлов выберите Тип файла -> Текст Юникод -> Сохранить.
  5. После выбора у вас появится диалоговое окно ниже, подтвердите преобразование, нажав Да .Файл будет сохранен в выбранную вами папку.
  6. Нажмите правой кнопкой мыши на сохраненный файл, выберите Открыть с помощью -> Блокнот .
  7. В открытом Блокноте выберите Файл -> Сохранить Как -> в открывшемся окне заполните следующие значения: Имя файла (File name) : добавьте к названию вашего файла расширение .csv как на скриншоте ниже
    Тип файла (Save as Type): выберите Все файлы (All Files)
    Кодировка (Encoding): выберите UTF-8 После заполнения всех данных нажмите Сохранить . Файл будет сохранен в выбранную вами папку для последующей загрузки контактов в Адресную книгу.
  8. В Robovoice выберите разделитель – Табуляция , либо Точка с запятой/Запятая.
  9. Перетащите преобразованный файл и сопоставьте поля с вашими значениями.

информация

Если при сопоставлении полей все поля съехали в одну колонку, закройте окно, выберите другой разделитель и заново загрузите файл.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *