Que faire pour réparer le sous-document style.xml?

Bonjour,
Je n’arrive plus à ouvrir un document *.odt et le message suivant s’affiche:

Erreur de lecture.

Erreur de format
dans le fichier du sous-document
styles.xml à la position
2,204601(row,col).

Le document fait environ 250 ko. Il a été créé sur MS il y a plusieurs années mais je l’ai converti en ODT avec LibreOffice depuis longtemps. Il contient uniquement du texte (pas d’images).
Que dois-je faire pour récupérer le contenu de ce document important qui contient mes notes de lecture?

J’ai vu sur certains forums qu’il était possible de modifier l’extension odt en zip et de réparer individuellement les fichiers, mais n’étant pas informaticien, je ne sais pas comment repérer et réparer les erreurs des fichiers.

Je vous remercie d’avance de votre aide et conseils!

Syl

La réparation manuelle est très aléatoire et demande une connaissance approfondie du codage des styles en norme ODF. Je ne la conseille donc pas, surtout si vous n’êtes pas sûr de vous. Il y a en outre une difficulté supplémentaire due à la conversion depuis M$ Office: Word n’a pas la même richesse de styles que Writer. Par conséquent, ce qui serait un style de caractère ou de page unique se retrouve comme des occurrences particulières (bien qu’identiques) pour chaque utilisation, ce qui contribue à la prolifération des styles et à l’inflation inutile de la taille du fichier.

Si l’objectif est de récupérer le texte du fichier, en sacrifiant éventuellement la mise en page (qui pourra être reconstituée après, peut-être en créant une famille de styles cohérente et rigoureuse), c’est relativement facile, même pour un non-informaticien à condition de procéder avec application sans se presser.

Je note que vous avez omis de préciser votre OS. Si vous désirez fournir l’information, faites-le en éditant votre question ou en rédigeant un commentaire. Les "réponses sont réservées aux solutions.

Voici la procédure:

  1. Faites une copie de votre fichier, puis travaillez exclusivement sur la copie.

    Cela permet de tout recommencer en cas d’erreur.

  2. Changez l’extension du fichier (copie)

    Dans le navigateur de fichier, cliquez (une seule fois) sur le fichier pour le sélectionner. Activez la commande de renommage (F2 sous Linux). Remplacez le suffixe .odt par “.zip”.

    Windows et MacOS X n’affichent pas en général l’extension. Vous devrez régler les préférences ou la configuration pour que l’extension soit visible.

  3. Ouvrez la copie en “.zip”

    Un double-clic dessus devrait suffire. Sinon, ouvrez d’abord l’utilitaire de compression puis utilisez la commande d’ouverture depuis le menu.

  4. Trouvez le fichier styles.xml et supprimez-le.

  5. Enregistrez la copie ainsi modifiée.

  6. Replacez l’extension .odt à la place de .zip de la même façon qu’indiqué à la deuxième étape.

Vous pouvez maintenant ouvrir la copie “normalement” avec LO Writer. La mise en page a disparu mais le texte est toujour là.

Pour montrer à la communauté que la question a trouvé sa réponse, cliquez sur ✓ à côté de la “bonne” réponse, et “votez” en cliquant sur la flèche ^ de toute réponse utile. Ce sont les mécanismes utilisés pour communiquer la qualité des questions et réponses sur ce site. Merci!

Note pour les autres contributeurs: une autre raison pour laquelle il est très difficile d’aller réparer les divers fichiers de l’archive est que ceux-ci ne sont pas destinés à être ouverts dans des éditeurs de texte. Les retours à la ligne sont très rares et les “lignes” XML sont tellement longues qu’elles excèdent bien souvent la taille maximale des tampons des éditeurs. L’excès de ces lignes est purement et simplement perdu, si bien que l’enregistrement du fichier le détériore irrémédiablement. La seule possibilité restante est de travailler avec un éditeur hexadécimal et je vous laisse imaginer la galère.

La bonne approche serait de créer un fichier .fodt mais le fichier original n’est pas lisible par Writer. Donc exit cette possibilité.

Bonjour ajlittoz et merci beaucoup pour cette réponse très rapide et complète! Vraiment top! :slight_smile:

Malheureusement, j’ai suivi la marche à suivre pour supprimer le sous-document styles.xml et quand j’essaie d’ouvrir le nouveau document après avoir supprimé style.xml, LibreOffice me demande si je veux réparer le document. Si je clique oui, le message d’erreur suivant apparaît:

Erreur de lecture.

Erreur de format dans le fichier du sous-document content.xml à la position 1,0(row,col).

Si cela devient trop compliqué, j’ai réussi à récupérer la copie précédente du fichier avant la dernière modification (1 jour de travail).

Merci beaucoup pour la précieuse aide!

Syl

Une erreur en cascade comme ça est un symptôme de document très gravement endommagé. J’ai fait mon essai sur un document correct. Lui supprimer ses styles ne lui a fait ni chaud ni froid, sauf que tout se retrouve en Style par défaut. content.xml est le sous-document qui contient le texte proprement dit.

Si vous avez la version précédente, c’est mieux que de tenter des bricolages non garantis.

Ôtez-moi un doute. Vous sauvegardez bien en .odt? parce que .docx est aussi un format “zippé”. N’ayant plus de Word depuis longtemps, je suis incapable de prédire l’effet de l’amputation de styles.xml sur un tel fichier.

Re bonjour! Oui oui, bien entendu, je sauve tous mes documents en .odt et j’essaie de convaincre mon entourage de faire pareil! Cela dit, c’est noté, j’abandonne mes espoirs de récupérer les dernières modifications sur ce document. Je ne sais pas ce qui a pu se passer tout à coup avec ce document qui marchait bien jusqu’à là, mais je te remercie sincèrement pour tes explications et ton aide et la rapidité de tes réponses! Merci merci! :slight_smile:

Bonjour, je crois rencontrer le même problème. Le message indiqué est ce dernier:
Erreur de lecture.
Erreur de format dans le fichier du sous-document content.xml à la position 0,0(row,col)
Cela dit l’informatique et moi nous ne sommes pas de très bons amis… Je dois donc avouer que je n’ai pas compris la solution… Si quelqu’un pourrait m’aider au mieux, je lui en serais reconnaissante car c’est un document très important que je dois absolument avoir pour demain!!! #URGENT

Bjr,
Allez ici : https://forum.openoffice.org/fr/forum/viewforum.php?f=35
Vous aurez probablement votre solution !
@+