# определить кодировку файла
file -bi /home/x.txt
# coding: utf-8
# из строки в байты
s = "финтифлюшка"
print(s.encode('utf-8'))
>> b'\xd1\x84\xd0\xb8\xd0\xbd\xd1\x82\xd0\xb8\xd1\x84\xd0\xbb\xd1\x8e\xd1\x88\xd0\xba\xd0\xb0'
# из байтов в строку
s = b'\xd1\x84\xd0\xb8\xd0\xbd\xd1\x82\xd0\xb8\xd1\x84\xd0\xbb\xd1\x8e\xd1\x88\xd0\xba\xd0\xb0'
print(s.decode('latin-1'))
>> финтифлюшка
s = "финтифлюшка"
print(s.encode('utf-8').decode('latin-1'))
# Открываем файл. кодировка = iso-8859-1
with open("1.txt", 'rb') as f:
bytes = f.read()
stroka = bytes.decode('iso-8859-1')
# сохраняем в utf-8
with open("2.txt", 'w', encoding='utf-8') as f:
f.write(stroka)
# -*- coding: utf-8 -*-
# функция
def new_codirovka(filename, newfilename, encoding_from, encoding_to='utf-8'):
with open(filename, 'r', encoding=encoding_from) as fr:
with open(newfilename, 'w', encoding=encoding_to) as fw:
for line in fr:
fw.write(line)
filename = "путь к файлу"
newfilename = "путь к новому файлу"
encoding_from = "windows-1251"
encoding_to = "utf-8"
new_codirovka(filename, newfilename, encoding_from, encoding_to)
file -bi /home/x.txt
# coding: utf-8
# из строки в байты
s = "финтифлюшка"
print(s.encode('utf-8'))
>> b'\xd1\x84\xd0\xb8\xd0\xbd\xd1\x82\xd0\xb8\xd1\x84\xd0\xbb\xd1\x8e\xd1\x88\xd0\xba\xd0\xb0'
# из байтов в строку
s = b'\xd1\x84\xd0\xb8\xd0\xbd\xd1\x82\xd0\xb8\xd1\x84\xd0\xbb\xd1\x8e\xd1\x88\xd0\xba\xd0\xb0'
print(s.decode('latin-1'))
>> финтифлюшка
s = "финтифлюшка"
print(s.encode('utf-8').decode('latin-1'))
# Открываем файл. кодировка = iso-8859-1
with open("1.txt", 'rb') as f:
bytes = f.read()
stroka = bytes.decode('iso-8859-1')
# сохраняем в utf-8
with open("2.txt", 'w', encoding='utf-8') as f:
f.write(stroka)
# -*- coding: utf-8 -*-
# функция
def new_codirovka(filename, newfilename, encoding_from, encoding_to='utf-8'):
with open(filename, 'r', encoding=encoding_from) as fr:
with open(newfilename, 'w', encoding=encoding_to) as fw:
for line in fr:
fw.write(line)
filename = "путь к файлу"
newfilename = "путь к новому файлу"
encoding_from = "windows-1251"
encoding_to = "utf-8"
new_codirovka(filename, newfilename, encoding_from, encoding_to)
Комментариев нет:
Отправить комментарий