Je dois extraire des métadonnées d'un lot (mon petit échantillon de travail a des centaines, le total sera probablement des milliers) de fichiers Microsoft Office, principalement Word.Extraire les métadonnées à partir de vieux fichiers Word (à partir de 2.0)
Ces fichiers Word versions de Word 2.0 vont vers Word 2007.
je dois le faire dans .NET 3.5 (en utilisant C#) et il est une application WinForms locale.
Je peux extraire les métadonnées des plus récentes avec OLE Automation (DsoFile.dll), je pense. Je l'ai fait avec succès avec certains d'entre eux.
Le problème est que les anciens formats ne sont pas supportés par DsoFile. Ils n'utilisent pas OLE, probablement. J'ai fait beaucoup de googling et j'ai trouvé que le meilleur moyen (probablement le seul) d'obtenir les données que je voulais était d'utiliser antiword (http://www.winfield.demon.nl/). Avec antiword je peux invoquer son processus et collecter sa sortie. Il peut extraire certaines des données mais pas tout ce dont j'ai besoin. Exemple: antiword me donne seulement une des dates stockées et j'en ai besoin de deux.
Il y a aussi wvware mais je suppose que c'est linux seulement.
Une autre option serait gnu libextractor mais je ne peux pas trouver un moyen d'utiliser dans le .net
Bureau Interop serait un dernier recours désespéré. Je n'ai pas testé cette option, mais je suppose que ce n'est pas une option quand on veut traiter une énorme quantité de fichiers avec des performances décentes.
Quelqu'un peut-il aider? Si vous avez besoin de plus de données, il suffit de demander.
Désolé pour mon anglais, je ne suis pas de langue maternelle.
+1 Merci pour l'aide. Pour les anciennes versions de mot, j'ai fini par utiliser antiword sur Linux avec un petit hack pour extraire la date manquante dont j'avais besoin dans un fichier xml et l'analyser avec le C# aussi que je construisais. Pour les nouveaux formats j'ai utilisé l'outil (OLE) DsoFile.dll Microsoft disponible. Les métadonnées que j'extrayais étaient des choses simples: Auteur, certaines dates, etc Sidenote: je ne peux pas upvote votre réponse, je n'ai pas assez de repo. :( – osiris
Ah, ouais, cet outil de profilage.C'est assez pratique, mais je devais faire beaucoup plus que d'extraire les éléments composés (des trucs fous comme détecter du texte caché et blanc sur blanc, des en-têtes morts, des styles nommés, etc.). Pas de soucis à propos de l'upvote. – DarinH