Si tu es sous windows avec ton xbmc, tu créés un simple script du genre :
(Python):
import os, os.path
chemin_non_unicode = os.path.join(os.getcwd(),"chemin non unicode.txt")
f=open(chemin_non_unicode ,"w")
f.write("test reussi")
f.close()
chemin_unicode = unicode(os.path.join(os.getcwd(),"chemin unicode.txt"))
try:
f=open(chemin_unicode ,"w")
#une erreur windows sera levé lors de la création : Errno 122
f.write("blabla")
f.close()
except Exception,msg:
print Exception,msg
#autre essai
try:
f=open(u"test.txt" ,"w")
#une erreur windows sera levé lors de la création : Errno 122
f.write("blabla")
f.close()
except Exception,msg:
print Exception,msg
Que le chemin soit récupéré ou écrit, si il est en unicode, alors ca plante.
Dans mon cas, je passe par l'unicode que je réencode pour afficher correctement les textes accentués. Donc le chemin doit se retrouver unicode à un moment ou un autre et donc provoque cette erreur
Je l'ai solutionné comme suit :
(Python):
try:
f=open(u"test.txt".encode("utf8") ,"w")
f.write("succes")
f.close()
except Exception,msg:
print Exception,msg