在 python 中,尝试打开使用 glob.glob 获得的文件路径,我怀疑该路径包含与 open() 可以处理的编码不同的字符,但不确定。我可以跳过该文件,但我需要一种方法来检测导致问题的字符。或者更确切地说,无论如何打开文件的方法都是完美的。
尝试打开许多文件,其中一个文件的名称为
.\\input\\537700 Raven-Symone, Anneliese van der Pol, Orlando Brown - That's So Raven! (Theme Song)\\Raven-Symone, Anneliese van der Pol, Orlando Brown - That's So Raven! (Theme Song) (fieryrage) [mk's hard].osu
不会打开。相反,出现错误):
files = glob.glob(folder+'*.osu', recursive = True)
for file in files:
inputFile = open(file, 'r', encoding='utf-8')
Exception has occurred: FileNotFoundError
[Errno 2] No such file or directory: ".\\input\\537700 Raven-Symone, Anneliese van der Pol, Orlando Brown - That's So Raven! (Theme Song)\\Raven-Symone, Anneliese van der Pol, Orlando Brown - That's So Raven! (Theme Song) (fieryrage) [mk's hard].osu"
File "C:\Users\Jonathan McClen\Documents\SliderToCircleOsuMapConversion\new.py", line 19, in <module>
inputFile = open(file, 'r', encoding='utf-8')
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
FileNotFoundError: [Errno 2] No such file or directory: ".\\input\\537700 Raven-Symone, Anneliese van der Pol, Orlando Brown - That's So Raven! (Theme Song)\\Raven-Symone, Anneliese van der Pol, Orlando Brown - That's So Raven! (Theme Song) (fieryrage) [mk's hard].osu"
问题是由文件路径上的 Windows 上限引起的 最大路径限制