Mise à jour du 20 novembre 2020 => Version 1.0.9
Je vous propose ici la dernière version d'un petit utilitaire de réparation de fichier XML écrit en langage Java que je vous propose de tester.
Vous devez donc avoir Java d'installé, ce qui est normalement le cas si vous avez suivi les tutoriels d'installation de Apache Open Office ou de Libre Office.
Je mets en ligne l'archive XmlRepar_v_1_0_9.zip qui contient un dossier XmlRepar_v_1_0_9, lequel contient l'exécutable XmlRepar.jar et un sous-dossier lib contenant les bibliothèques nécessaires.
Pour mémoire, je laisse ici l'ancienne version 1.0.8 Un tutoriel complet est disponible sur cette page. Ce tutoriel est un fichier Writer au format odt qui s'ouvre en lecture seule. Vous pouvez le télécharger directement par ce lien. Je le résume ci-dessous.
Dézippez l'archive et stockez le dossier XmlRepar_v_1_0_9 où vous le désirez. Pour lancer l'utilitaire, vous avez deux possibilités:
- par double clic sur l'icône du fichier XmlRepar.jar dans l'explorateur,
- en ligne de commande avec le code suivant
Code : Tout sélectionner
java -jar {chemin du dossier XmlRepar_v_x_x_x}/XmlRepar.jar
Une fenêtre s'ouvre avec une barre de menu et une zone de texte. La barre de menu contient les menus Fichier et Aide. L'aide vous donne quelques informations sur ce que peut faire l'utilitaire, sinon tout se gère par le menu Fichier en suivant les indications de la zone de texte:
- 1. Utilisez le menu Fichier->Ouvrir pour sélectionner le fichier à traiter, ce qui ouvre une fenêtre de l'explorateur pour choisir votre fichier XML.
- 2. Utilisez le menu Fichier->Réparer pour démarrer l'analyse du fichier. Vous avez une barre de progression qui s'anime au bas de la fenêtre et un message apparaît dans la zone de texte lorsque le travail est terminé. Utilisez l'ascenseur à droite pour voir le détail des erreurs corrigées.
Le fichier réparé est stocké sous un nom différent dans le même dossier que le fichier sélectionné. Ainsi, si vous avez sélectionné le fichier content.xml, le fichier réparé se nommera content_repare.xml.
- 3. Utilisez le menu Fichier->Ouvrir pour sélectionner un autre fichier, ou le menu Fichier->Quitter pour fermer l'application.
Attention : Réalisez toujours les tentatives de réparation sur une copie de votre document !
Je joins également une archive contenant un exemple de fichier corrompu et le résultat attendu après correction. Bons tests et merci pour vos retours.
![Oeillade :wink:](./images/smilies/icon_wink.gif)
Je ne prétends pas que cet utilitaire va résoudre tous les problèmes, mais il devrait être efficace pour la suppression des multiples définitions d'un attribut. Il peut aussi corriger les définition incorrectes lorsque le signe " est absent après la valeur de l'attribut. Enfin il peut aussi réparer la structure des blocs lorsqu'il trouve des balises orphelines ou lorsque le fichier est tronqué, mais le résultat risque de ne pas être interprétable par AOO/LibO, auquel cas il faudra tout de même mettre les mains dans le cambouis. Dans tous les cas, je conseille d'éditer le fichier pour l'examiner avant de tenter une réparation. En particulier, si la fin du fichier n'est plus que de la bouillie, la supprimer facilitera le travail de l'utilitaire... et lui évitera peut-être de se planter.
A+