Carregar ficheiros para "Data"

This commit is contained in:
2025-05-29 17:20:53 +00:00
parent a0eb808f87
commit aefa0a6226
4 changed files with 760 additions and 0 deletions

View File

@ -0,0 +1,57 @@
import os
# O ficheiro Grupo VAG ECU.txt deve estar na mesma pasta que este script.
DATA_FILE_PATH = os.path.join(os.path.dirname(__file__), 'Grupo VAG ECU.txt')
def load_vag_ecu_list():
"""
Carrega a lista de famílias de ECU do Grupo VAG a partir do ficheiro Grupo VAG ECU.txt.
Retorna:
set: Um conjunto de strings, onde cada string é uma família de ECU do Grupo VAG.
Retorna um conjunto vazio se o ficheiro não for encontrado ou ocorrer um erro.
"""
vag_ecus = set()
if not os.path.exists(DATA_FILE_PATH):
print(f"Erro: Ficheiro de dados não encontrado em {DATA_FILE_PATH}")
return vag_ecus
try:
# Tentar ler com utf-8 primeiro, que é mais universal
with open(DATA_FILE_PATH, mode='r', encoding='utf-8') as file:
for line in file:
stripped_line = line.strip()
if stripped_line: # Adicionar apenas se a linha não estiver vazia após remover espaços
vag_ecus.add(stripped_line)
except UnicodeDecodeError:
# Se utf-8 falhar, tentar com 'latin-1' como fallback
try:
vag_ecus.clear() # Limpar o conjunto antes de tentar novamente
with open(DATA_FILE_PATH, mode='r', encoding='latin-1') as file:
for line in file:
stripped_line = line.strip()
if stripped_line:
vag_ecus.add(stripped_line)
except Exception as e_latin1:
print(f"Erro ao ler o ficheiro {DATA_FILE_PATH} com latin-1: {e_latin1}")
return set() # Retornar conjunto vazio em caso de erro
except Exception as e_utf8:
print(f"Erro ao ler o ficheiro {DATA_FILE_PATH} com utf-8: {e_utf8}")
return set() # Retornar conjunto vazio em caso de erro
return vag_ecus
if __name__ == '__main__':
# Exemplo de utilização:
vag_ecu_families = load_vag_ecu_list()
if vag_ecu_families:
print(f"Carregadas {len(vag_ecu_families)} famílias de ECU do Grupo VAG.")
# Imprimir algumas para exemplo (se houver)
count = 0
for ecu in vag_ecu_families:
print(ecu)
count += 1
if count >= 5:
break
else:
print("Nenhuma família de ECU do Grupo VAG carregada.")