Я пытаюсь прочитать все текстовые файлы каталога.Приведенный ниже код работает только на Linux.Но у меня проблемы с чтением файлов со специальными символами, например: unsere-fotowand.html_tx_yag_pi1%5Bc142%5D%5BalbumUid%5D=1&tx_yag_pi1%5Bc142%5D%5BgalleryUid%5D=1&tx_yag_pi1%5Baction%5D=index&tx_yag_pi1%5Bcontroller%5D=Gallery&cHash=de647de667336c05d26cce3a7cb3a28a.txt
в Windows.Я пробовал такие вещи, как filename.encode().decode('utf8')
, но это не помогает.
import os
import sys
for r, d, f in os.walk(path):
for file in f:
if file.endswith('.txt'):
filename = os.path.join(r, file)
print(f'process file {filename}')
# throws file not found exception if tilename containts & or %
with open(filename, 'r', encoding="utf-8") as txtfile:
text = txtfile.read()
Как я могу заставить это работать на Linux и Windows?