"test"폴더에 유니 코드 파일명 : aγλώσ.txt 파일이 있습니다. 나는이 폴더에 os.walk 일을하고 파일을 열려고하지만이 오류를파이썬을 사용하여 유니 코드 파일 이름 읽기
IOError: [Errno 22] invalid mode ('rb') or filename: 'C:\\Users\\username\\Documents\\test\\a???s.txt'
를 얻을 다음은 내가 사용하고있는 코드는입니다.
path = r"C:\Users\username\Documents\test"
for rootFile, dirs, files in os.walk(path):
for filename in files:
absolutePath = os.path.abspath(rootFile)
fullFileName = os.path.join(absolutePath, filename)
with open(fullFileName , 'rb') as f:
#do something
는 또한 rootFile, dirs, files in os.walk(path.encode('utf-8'))
업데이트를 사용하여 시도 :
내가 rootFile, dirs, files in os.walk(unicode(path, 'utf-8')):
을 시도하고 나는이 나에게 다음과 같은 오류를 제공 fullFileName = fullFileName .encode('utf-8')
를했던 파일을 열기 전에
IOError: [Errno 2] No such file or directory: 'C:\\Users\\username\\Documents\\test\\a\xc3\x8e\xc2\xb3\xc3\x8e\xc2\xbb\xc3\x8f\xc5\xbd\xc3\x8f\xc6\x92.txt'
실제 파일 이름은 aγλώ입니다. __.txt
"root path"문자열을 파일 이름에 추가하기 때문에 게시 된 코드가 오류 메시지와 일치하지 않습니다. 사용중인 실제 코드를 게시하십시오. – BrenBarn
어디에서 실행하나요? –
코드 위치 또는 IDE를 의미합니까? IDE는 Eclipse입니다 – rdp