Optimized string replace to catch utf8 errors

This commit is contained in:
Kevin Veen-Birkenbach 2024-01-02 21:22:26 +01:00
parent ecdc5ce920
commit c7bf51941b

View File

@ -2,6 +2,7 @@ import os
import argparse import argparse
def replace_content(path, old_string, new_string, preview, verbose): def replace_content(path, old_string, new_string, preview, verbose):
try:
with open(path, 'r', encoding='utf-8') as f: with open(path, 'r', encoding='utf-8') as f:
content = f.read() content = f.read()
@ -14,6 +15,9 @@ def replace_content(path, old_string, new_string, preview, verbose):
with open(path, 'w', encoding='utf-8') as f: with open(path, 'w', encoding='utf-8') as f:
f.write(new_content) f.write(new_content)
except UnicodeDecodeError as e:
print_verbose(f"Warning: Unicode decode error encountered in file {path}. Skipping file.", verbose)
def print_verbose(content,verbose): def print_verbose(content,verbose):
if verbose: if verbose:
print(content) print(content)