日期:2014-05-18  浏览次数:20708 次

我只有这些分,全给了,求点思路!
请问我要对比2个word文件的内容,最后程序把差异找出来,比如字体差异、某行的内容差异等等,该怎样实现,不甚感谢!

------解决方案--------------------
如果前提是:
(1)以每行为对比
(2)每行内容基本一致(除去字体==格式)

那就好办了。
------解决方案--------------------
你可以考虑,把Word文档中的数据放到两个集合中,然后再进行比较,或者用XML也行,但是我没用过,你可以尝试一下
------解决方案--------------------
我觉得Word的COM化不怎么成功,操作起来比较麻烦,也许是我研究不够深入,也许是因为用C#来调用Word本就没有VB好,不过要比较两个Word文件的异同,或许直接对其的16进制比较会好一些,不然要遍历整个文章,还要判断Range的类型,若是表格,更是要整个表格一起分析,因为它的行列表述很成问题啊。
------解决方案--------------------
先把Word文档转成2007,也就是.DOCX格式的。其中的所有内容,属性就都保存到XML文件中了,然后抽取出这些XML文件,对每一个节点做比较就行了。
------解决方案--------------------
你用word2007打开现在的文档,重新保存,这时候它就默认保存为.docx格式了,这是一种基于Open XML的格式,你把文件后缀名的.docx改成.zip,然后解压缩,就可以看到很多文件夹,里面有保存内容的,保存图像的,保存文档属性的。。。慢慢研究吧,我估计工作量比较大,但是我觉得这个思路还是可行的,有时间我也实现一下你说的这个问题。
------解决方案--------------------
直接解析WORD文档格式,怎么样?就像解析BMP格式一样,只是内容复杂多了。
------解决方案--------------------
http://www.pudn.com/downloads32/sourcecode/windows/file/detail104129.html
delphi版的,但没法比较字体,可以参考一下