Maison > Article > développement back-end > Méthode Python pour résoudre les caractères chinois tronqués lorsque Fedora décompresse le zip
Avant-propos
Dans de nombreux cas, il n'y a aucun problème pour compresser des fichiers sous Windows, mais sous Linux, des caractères tronqués apparaissent, ce qui est très courant. Dans le passé, sous Ubuntu, vous pouviez simplement utiliser `unzip -O GBK filename.zip`
. Après le passage à Fedora, aucun fichier compressé tronqué n'a encore été trouvé. J'ai téléchargé le CD d'un livre la nuit et j'ai de nouveau rencontré des personnages tronqués. J'ai essayé la méthode précédente sans succès. Après avoir regardé l'aide de unzip, il n'y a pas de paramètre -O == Je viens de trouver une solution en utilisant python, partagez-la.
Créez un nouveau fichier avec le suffixe `.py`, copiez et collez directement le code :
#!/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()
Exécutez le zip de décompression fichier, mignon chinois vient de sortir.
python 文件名.py 需要解压的文件名.zip
Résumé
D'accord, c'est tout pour cette question C'est une solution simple, est-ce que tout le monde l'a appris ? J'espère que cet article pourra apporter de l'aide aux études ou au travail de chacun. Si vous avez des questions, vous pouvez laisser un message pour communiquer.
Pour plus de méthodes Python permettant de résoudre les caractères chinois tronqués lorsque Fedora décompresse le zip, veuillez faire attention au site Web PHP chinois !