python os.listdir() 사용시 한글, 한자 파일을 제대로 못불러옵니다.
글쓴이: junsa9 / 작성시간: 수, 2016/04/20 - 6:53오후
파이썬에서 os.listdir 을 사용할때
파일중에 한글또는 한자등의 파일이름이 있을때 이것이 디코딩이 안되는것같습니다.
수없이 검색을 해보고 있는데 리스트로 반환받은 데이터를 디코딩하는것에 대해서는 찾지를 못하겠네요.
테스트한 코드를 첨부합니다.
File attachments:
첨부 | 파일 크기 |
---|---|
![]() | 215.74 KB |
Forums:
i.decode("utf-8") 대신에 다음 세
대신에 다음 세 가지를 시도해보시죠. 아마 cp949 에서 제대로 나올 걸로 생각합니다. (python shell 이 그냥 바이트 스트림을 그대로 출력하며 윈도우 기본 인코딩을 같이 쓴다면 i 에서 제대로 나올 수도)
좋은 하루 되세요!
한 가지 더
애초에
os.listdir
에 넘겨주는 파라미터가 유니코드이면 돌아오는 문자열도 유니코드가 됩니다.(대체로 문자열을 받아서 문자열들을 돌려주는 os 함수들은 거의 다 이렇게 동작합니다.)
dir = u'D:/MAS/comp/masSmartViewer/source2'
로 고쳐서 돌려보세요.댓글 달기