确定旧Microsoft Office文件的文件格式(版本)

时间:2015-01-29 19:32:53

标签: .net file ms-office office-interop

我的一台服务器上有50k + .doc个文件,这些文件是用户自90年代初以来累积的。

其中一些文件是在Macintosh上创建的,或者是在真正旧版本的Word上创建的。

  • 我试图在没有运气的情况下查看Word中的元数据。

  • 我尝试使用.NET Interop for Word并打开文档来查看可用的属性。什么都没有跳出来。

  • 我尝试将FileInfo用于一系列没有运气的文件。

我确实找到了一个名为Trid.exehttp://mark0.net/soft-trid-e.html)的程序,如果我查询1995年的doc文件,它会告诉我它们是用MacWrite II创建的。

我如何用.NET做同样的事情?

我希望首先获得所有文件的报告,以查看正在处理的文件以及转换为较新格式仍然需要的文件以及删除/存档不再需要的文件。

1 个答案:

答案 0 :(得分:1)

Trid最重要的部分实际上是用.NET编写的 - 我会直接与他联系,以他的方式发送捐款,并且很好地问他是否可以与你分享他的.NET程序集或类似内容。

请参阅http://mark0.net/code-tridengine-e.html

如果你删除或放宽你的.NET要求,或者不会在从.NET调用另一个进程时眨眼,你的选项就会打开,尽管我将最后的工作留给你测试这些选项。

来自英国国家档案馆的{p> DROID是一种受到尊重的开源工具,用于进行此类识别,并以之前的一些工作为基础。不过,它是用Java编写的。从.NET调用它的一种方法是使用the Process class。可以使用更复杂的方法从.NET启动或控制Java进程。

在最近的Linux版本中,还有其他一些开源工具,如libmagicfile命令,我不会详细介绍。

有一些专有引擎也可以运行。我敢打赌,如果你愿意,谷歌可以解决这些问题。