• <menu id="w2i4a"></menu>
  • logo E-iceblue中文文檔

    文檔首頁>>E-iceblue中文文檔>>通過比較兩個 Word 文檔來獲取差異

    通過比較兩個 Word 文檔來獲取差異


    我們已經(jīng)介紹了如何在 C# 和 VB.NET 中比較兩個 Word 文檔。從 Spire.Doc V8.12.14 開始,它支持在結(jié)構(gòu)列表中獲取兩個 Word 文檔之間的差異。本文將向您展示如何使用 Spire.Doc 通過比較兩個 Word 文檔來獲取差異。

    Spire.Doc for.NET 最新下載

    如何添加復(fù)選框和圖片內(nèi)容控件的代碼片段:

    【C#】

    using Spire.Doc;
    using Spire.Doc.Documents;
    using Spire.Doc.Fields;
    using Spire.Doc.Formatting.Revisions;
    using System;
    
    namespace GetWordDifferences
    {
    class Program
    {
    static void Main(string[] args)
    
    {
    //Load the first Word document
    Document doc1 = new Document();
    doc1.LoadFromFile("Sample1.docx");
    
    //Load the second Word document
    Document doc2 = new Document();
    doc2.LoadFromFile("Sample2.docx");
    
    //Compare the two Word documents
    doc1.Compare(doc2, "Author");
    
    foreach (Section sec in doc1.Sections)
    {
    foreach (DocumentObject docItem in sec.Body.ChildObjects)
    {
    if (docItem is Paragraph)
    {
    Paragraph para = docItem as Paragraph;
    if (para.IsInsertRevision)
    {
    EditRevision insRevison = para.InsertRevision;
    EditRevisionType insType = insRevison.Type;
    string insAuthor = insRevison.Author;
    DateTime insDateTime = insRevison.DateTime;
    }
    
    else if (para.IsDeleteRevision)
    {
    EditRevision delRevison = para.DeleteRevision;
    EditRevisionType delType = delRevison.Type;
    string delAuthor = delRevison.Author;
    DateTime delDateTime = delRevison.DateTime;
    }
    
    foreach (ParagraphBase paraItem in para.ChildObjects)
    {
    if (paraItem.IsInsertRevision)
    {
    EditRevision insRevison = paraItem.InsertRevision;
    EditRevisionType insType = insRevison.Type;
    string insAuthor = insRevison.Author;
    DateTime insDateTime = insRevison.DateTime;
    }
    
    else if (paraItem.IsDeleteRevision)
    {
    EditRevision delRevison = paraItem.DeleteRevision;
    EditRevisionType delType = delRevison.Type;
    string delAuthor = delRevison.Author;
    DateTime delDateTime = delRevison.DateTime;
    }
    
    }
    }
    }
    }
    
    //Get the difference about revisions
    DifferRevisions differRevisions = new DifferRevisions(doc1);
    var insetRevisionsList = differRevisions.InsertRevisions;
    var deletRevisionsList = differRevisions.DeleteRevisions;
    }
    }
    }

    【VB.NET】

    Imports Spire.Doc
    Imports Spire.Doc.Documents
    Imports Spire.Doc.Fields
    Imports Spire.Doc.Formatting.Revisions
    Imports System
    
    Namespace GetWordDifferences
    
    Class Program
    
    Private Shared Sub Main(ByVal args() As String)
    'Load the first Word document
    Dim doc1 As Document = New Document
    doc1.LoadFromFile("Sample1.docx")
    'Load the second Word document
    Dim doc2 As Document = New Document
    doc2.LoadFromFile("Sample2.docx")
    'Compare the two Word documents
    doc1.Compare(doc2, "Author")
    For Each sec As Section In doc1.Sections
    For Each docItem As DocumentObject In sec.Body.ChildObjects
    If (TypeOf docItem Is Paragraph) Then
    Dim para As Paragraph = CType(docItem,Paragraph)
    If para.IsInsertRevision Then
    Dim insRevison As EditRevision = para.InsertRevision
    Dim insType As EditRevisionType = insRevison.Type
    Dim insAuthor As String = insRevison.Author
    Dim insDateTime As DateTime = insRevison.DateTime
    ElseIf para.IsDeleteRevision Then
    Dim delRevison As EditRevision = para.DeleteRevision
    Dim delType As EditRevisionType = delRevison.Type
    Dim delAuthor As String = delRevison.Author
    Dim delDateTime As DateTime = delRevison.DateTime
    End If
    
    For Each paraItem As ParagraphBase In para.ChildObjects
    If paraItem.IsInsertRevision Then
    Dim insRevison As EditRevision = paraItem.InsertRevision
    Dim insType As EditRevisionType = insRevison.Type
    Dim insAuthor As String = insRevison.Author
    Dim insDateTime As DateTime = insRevison.DateTime
    ElseIf paraItem.IsDeleteRevision Then
    Dim delRevison As EditRevision = paraItem.DeleteRevision
    Dim delType As EditRevisionType = delRevison.Type
    Dim delAuthor As String = delRevison.Author
    Dim delDateTime As DateTime = delRevison.DateTime
    End If
    
    Next
    End If
    
    Next
    Next
    'Get the difference about revisions
    Dim differRevisions As DifferRevisions = New DifferRevisions(doc1)
    Dim insetRevisionsList = differRevisions.InsertRevisions
    Dim deletRevisionsList = differRevisions.DeleteRevisions
    End Sub
    End Class
    End Namespace

    歡迎下載|體驗(yàn)更多E-iceblue產(chǎn)品

    如需獲取更多產(chǎn)品相關(guān)信息請咨詢慧都在線客服  


    掃碼咨詢


    添加微信 立即咨詢

    電話咨詢

    客服熱線
    023-68661681

    TOP
    三级成人熟女影院,欧美午夜成人精品视频,亚洲国产成人乱色在线观看,色中色成人论坛 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();