Se você já se deparou com arquivos de texto em encoding desconhecido ou incorreto, sabe o quão frustrante pode ser lidar com caracteres corrompidos. Este método oferece uma solução rápida e confiável, utilizando um script Python para detectar e converter automaticamente o encoding para UTF-8, garantindo a integridade dos dados.
Primeiro, crie um arquivo Python chamado convert_encoding.py. Este script usará a biblioteca chardet para detectar o encoding atual do arquivo e convertê-lo para UTF-8.
import chardet
import os
def detect_encoding(file_path):
with open(file_path, 'rb') as f:
raw_data = f.read()
result = chardet.detect(raw_data)
encoding = result['encoding']
confidence = result['confidence']
return encoding, confidence
def convert_to_utf8(input_file, output_file):
encoding, confidence = detect_encoding(input_file)
print(f"Detected encoding: {encoding} (confidence: {confidence:.2f})")
with open(input_file, 'r', encoding=encoding) as f:
content = f.read()
with open(output_file, 'w', encoding='utf-8') as f:
f.write(content)
print(f"File converted to UTF-8 and saved as {output_file}")
if __name__ == "__main__":
input_file = 'arquivo_original.txt'
output_file = 'arquivo_convertido.txt'
convert_to_utf8(input_file, output_file)
Para que o script funcione corretamente, é necessário instalar a biblioteca chardet. Execute o seguinte comando no terminal:
pip install chardet
Com o script criado e as dependências instaladas, execute o comando abaixo para converter o arquivo:
python convert_encoding.py
O script detectará automaticamente o encoding do arquivo arquivo_original.txt e criará uma nova versão em UTF-8 chamada arquivo_convertido.txt.
| Arquivo Original (Encoding: ISO-8859-1) | Arquivo Convertido (UTF-8) |
|---|---|
Olá, mundo! Café brasileiro. |
Olá, mundo! Café brasileiro. |
Com este script, você automatiza a conversão de encoding em segundos, eliminando caracteres corrompidos e garantindo que seus arquivos de texto sejam compatíveis com qualquer sistema ou aplicação que exija UTF-8.