gpt4 book ai didi

python - python中对非英文文件名的文件操作

转载 作者:可可西里 更新时间:2023-11-01 09:20:53 24 4
gpt4 key购买 nike

这个问题可能是我们很多人都面临的,但我在 unicode 处理方面很差。这是问题所在:这是一个代码片段,我正在尝试执行 .exe 文件并检查文件路径是否存在但没有运气:

#Python 2.6.7

filePath = 'C:\\Test\\' # Test folder haveing file BitComet_比特彗星_1_25.exe

for (adir, dirs, files) in os.walk(rootdir):
for f in files:
path = os.path.join(adir,f)
if os.path.exists(path ):
print'Path Found',path
#Extract file
#logging(path )
else:
print 'Path Not Found'
#logging(path )

我总是得到“找不到路径”的结果。我尝试使用 path.decode('utf-8'):
但是脚本将文件路径读取为:

C:\Test\BitComet_????_1_25.exe    

由于这个文件路径不存在,所以它转到else分支。

请给我一个提示来处理这个 unicode 问题,如果我能够让用户在 cmd 或日志文件中显示文件路径是否更好。

如果这似乎是重复的帖子,我深表歉意。

最佳答案

Windows 路径以 UTF-16 编码。 Python 可以为您处理此问题,只需将 unicode 路径传递给 os.walk(),您将获得 Unicode 结果:

filePath = u'C:\\Test\\'  # Test folder haveing file BitComet_比特彗星_1_25.exe

for (adir, dirs, files) in os.walk(filePath):

关于python - python中对非英文文件名的文件操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15833509/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com