• [^] # Re: Réponse de Qt pour les mauvais encodage dans les nom de fichiers

    Posté par (site web personnel) . En réponse à la dépêche Sortie d'UltraCopier 0.2 et Catchcopy. Évalué à 4.

    Il n'y a pas de problème, Qt fonctionne très bien avec des noms de fichier mal encodés. Le bug est dans ton code, pas dans Qt (ni dans Linux :-)). Exemple en Python :
    from PyQt4.QtCore import QDir, QFile, QIODevice
    cwd = QDir('.')
    entries = cwd.entryInfoList()
    for entry in entries:
    .. name = entry.fileName()
    .. if unicode(name).startswith(u"."):
    .... continue
    .. file = QFile(name)
    .. file.open(QIODevice.ReadOnly)
    .. data = file.read(10)
    .. file.close()
    .. bytes_name = str(QFile.encodeName(name))
    .. print "%r: content=%r" % (bytes_name, data)

    Pour créer un fichier avec un nom invalide sous Linux : echo "pouet" > $(echo -ne "b\xff--").