From c444a3f6acb58575e00e8b7c6ffdb7fcef05d339 Mon Sep 17 00:00:00 2001 From: albert Date: Wed, 1 Apr 2026 10:03:31 +0200 Subject: [PATCH] =?UTF-8?q?fix:=20Verwende=20io.open()=20f=C3=BCr=20besser?= =?UTF-8?q?e=20Encoding-Unterst=C3=BCtzung=20in=20der=20get-Funktion?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- repovizcheck.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/repovizcheck.py b/repovizcheck.py index 66f5f6f..e17695e 100644 --- a/repovizcheck.py +++ b/repovizcheck.py @@ -1,3 +1,5 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- """ repovizcheck.py @@ -20,6 +22,7 @@ import sys import re import os.path as p import argparse +import io print(r" ____ __ ___ ____ _ _ ") print(r"| _ \ ___ _ __ ___ \ \ / (_)____ / ___| |__ ___ ___| | _____ _ __ ") @@ -57,9 +60,10 @@ if file_suffix not in perm_file_suffix: # Funktion zum Oeffnen einer Datei mit Pruefung def get(name): '''Funktion zum Oeffnen einer Datei mit Pruefung (prüft Encoding)''' + # io.open() wird verwendet, da es in Python 2 und 3 den encoding-Parameter unterstuetzt. # Versuche zuerst UTF-8, lese die gesamte Datei zur Validierung. try: - f = open(name, "r", encoding='utf-8') + f = io.open(name, "r", encoding='utf-8') f.read() # komplette Datei lesen, um Decode-Fehler sicher zu erkennen f.seek(0) return f @@ -67,7 +71,7 @@ def get(name): # UTF-8 passt nicht — versuche ISO-8859-1 try: f.close() - return open(name, "r", encoding='ISO-8859-1') + return io.open(name, "r", encoding='ISO-8859-1') except IOError: print("") print("The File", name, "can't be opened with fallback encoding!")