Oui, c'est vrai que pour l'instant le seul moyen d'édition un fichier est d'attaquer l'API en Python. Il y a quelques exemples sur la page : http://hachoir.org/wiki/HachoirEditor
Est ce que ça peut, par exemple modifier les chaînes de caractères dans un binaire ?
Il faut avoir un parseur pour le format que tu veux éditer. Mais une fois que le parseur est écrit, on manipule des objets Python qui vont s'occuper de convertir les données dasn le bon format. Pour une chaîne de caractère, Hachoir s'occupe d'ajouter le préfixe ou le suffixe (pour une chaîne C : ajoute "0円" à la fin, pour une chaîne Pascal : ajoute la longueur en préfixe) et je crois qu'il s'occupe aussi des charsets (ou si ce n'est pas le cas, il le fera très vite :-)). Pour les nombres, il va sérialiser les nombres selon la taille du champ et l'endian. Une liste incomplète et pas à jour des types peut se trouver là : http://hachoir.org/wiki/WriteYourParser
[^] # Re: Intéréssant
Posté par Victor STINNER (site web personnel) . En réponse à la dépêche Hachoir version 0.6. Évalué à 3.
http://hachoir.org/wiki/HachoirEditor
Est ce que ça peut, par exemple modifier les chaînes de caractères dans un binaire ?
Il faut avoir un parseur pour le format que tu veux éditer. Mais une fois que le parseur est écrit, on manipule des objets Python qui vont s'occuper de convertir les données dasn le bon format. Pour une chaîne de caractère, Hachoir s'occupe d'ajouter le préfixe ou le suffixe (pour une chaîne C : ajoute "0円" à la fin, pour une chaîne Pascal : ajoute la longueur en préfixe) et je crois qu'il s'occupe aussi des charsets (ou si ce n'est pas le cas, il le fera très vite :-)). Pour les nombres, il va sérialiser les nombres selon la taille du champ et l'endian. Une liste incomplète et pas à jour des types peut se trouver là :
http://hachoir.org/wiki/WriteYourParser
Haypo