English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

python이 Fedora에서 zip 압축 해제할 때 중국어 망쳐짐 해결 방법

서론

대부분의 경우 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

결론

좋아요, 이 문제는 이렇게 간단하게 해결되었습니다. 모두가 배웠나요? 이 기사가 여러분의 학습이나 업무에 도움이 되길 바랍니다. 의문이 있으면 댓글을 통해 교류하세요.

추천 합니다