Bonjour,
Pour utiliser du Chinois dans la lecture de fichier sur Python :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 # -*- coding: utf-8 -*- with open("1300001717.txt", "rb") as f: print(f.read().decode('gb2312','ignore'))
Bonjour,
Pour utiliser du Chinois dans la lecture de fichier sur Python :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 # -*- coding: utf-8 -*- with open("1300001717.txt", "rb") as f: print(f.read().decode('gb2312','ignore'))
Normalement tu ne devrais pas avoir de problème pour lire du chinois avec cette version...
Essayes de forcer l'encodage en te mettant en mode binaire
Mais normalement il n'y a pas besoin de cet artifice avec python 3.x, l'unicode est supporté d'origine.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 with open('monfichier.txt', 'rb') as f: content = f.read() # bytes print(content.decode('utf8')) # str
Avec decode j'ai une erreur :
print(contenu.decode('utf8'))
AttributeError: 'str' object has no attribute 'decode'
Et sinon quand je fais ce code suivant ca me mets pas les caracteres chinois mais ce que j'aiu deja decrit au dessus :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 fichier = open("test.txt", "r") contenu = fichier.read() contenu2 = contenu print(contenu) print(contenu.encode('utf8')) print(contenu2.encode('utf8').decode('utf8')) fichier.close()
J'ai pas mis le mode "r" mais le mode "rb".
Partager