English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
서론
대부분의 경우 Windows에서 파일을 압축하는 것에는 문제가 없지만, Linux로 가면 깨지는 문자가 매우 일반적입니다. 예전에는 Ubuntu에서 `unzip`을 사용했습니다. -O GBK filename.zip` 이면 해결됩니다. Fedora로 바꿨을 때, 임시로 압축 파일의 깨짐을 발견하지 못했습니다. 밤에 책의 디스크를 다운로드하면서 깨짐을 다시 만났습니다. 이전 방법을 시도했지만 성공하지 못했습니다. unzip의 help를 보니-O 해당 매개변수를 찾았습니다== python으로 해결하는 방법을 공유합니다.
`.py` 확장자의 파일을 하나 새로 만들어 코드를 복사 붙여넣습니다:
#!/usr/bin/env python # -*- coding: utf-8 -*- import os import sys import zipfile print "Processing File " + sys.argv[1] file=zipfile.ZipFile(sys.argv[1],"r"); for name in file.namelist(): utf8name=name.decode('gbk') print "Extracting " + utf8name pathname = os.path.dirname(utf8name) if not os.path.exists(pathname) and pathname!= "": os.makedirs(pathname) data = file.read(name) if not os.path.exists(utf8name): fo = open(utf8name, "w") fo.write(data) fo.close file.close()
압축 파일을 해제하면 귀여운 중국어가 나옵니다.
python 파일 이름.py 필요한 압축 파일 이름.zip
결론
좋아요, 이 문제는 이렇게 간단하게 해결되었습니다. 모두가 배웠나요? 이 기사가 여러분의 학습이나 업무에 도움이 되길 바랍니다. 의문이 있으면 댓글을 통해 교류하세요.