Vergelijk twee of meer Word-documenten met C#

Vergelijk twee of meer Word-documenten met C#

U kunt eenvoudig twee of meer Word-documenten of meerdere versies van hetzelfde Word-bestand vergelijken op de verschillen en overeenkomsten programmatisch in uw .NET-toepassingen. In dit artikel leert u hoe u twee of meer Word-documenten kunt vergelijken en verschillen kunt markeren met C#. In dit artikel worden de volgende onderwerpen besproken/behandeld:

  • [C# API om DOCX-bestanden te vergelijken][2]
  • [Vergelijk twee of meer Word-documenten met C#][3]
  • [Vergelijk Word-documenten met Stream in C#][4]
  • [Tekst van de wijzigingen ophalen met C#][5]
  • [Vergelijking van documenteigenschappen met C#][6]
  • [Vergelijk wachtwoordbeveiligde Word-documenten met C#][7]
  • [Bladwijzers in Word-documenten vergelijken met C#][8]

C# API om DOCX-bestanden te vergelijken

Om twee of meer [DOCX][9]-bestanden te vergelijken, gebruik ik [GroupDocs.Comparison for .NET API][10]. Het vergelijkt twee of meer documenten en ontdekt de veranderingen in de inhoud van de documenten voor woorden, alinea’s en tekens. Als gevolg hiervan produceert het een vergelijkingsdocument dat de verschillen benadrukt en een samenvatting van de verschillen geeft. Het stelt u ook in staat veranderingen en verschillen in tekststijl tussen vergelijkbare documentindelingen te detecteren. De API ondersteunt het vergelijken van alle industriestandaard documentformaten zoals PDF, HTML, Word, Excel, PowerPoint, Outlook e-mails, Visio-diagrammen, OpenDocument, AutoCAD en afbeeldingen. U kunt de DLL van de API [downloaden][11] of installeren met [NuGet][12].

Install-Package GroupDocs.Comparison

Vergelijk twee of meer Word-documenten met C#

U kunt twee of meer Word-documenten programmatisch vergelijken door de onderstaande eenvoudige stappen te volgen:

  1. Maak een instantie van de klasse [Comparer][13] met het bron-DOCX-bestandspad
  2. Roep de methode [Add()][14] aan met het DOCX-doelbestand om toe te voegen aan de vergelijking
  3. Herhaal de bovenstaande stap om ter vergelijking meer bestanden toe te voegen
  4. Roep de methode [Compare()][15] aan met het uitvoerbestandspad Het volgende codevoorbeeld laat zien hoe u twee of meer Word-documenten kunt vergelijken en benadrukt de verschillen met behulp van C#.
    Bron en doel DOCX-bestanden

    Bron en doel DOCX-bestanden

Vergelijk twee of meer Word-documenten met C#

Vergelijk twee of meer Word-documenten met C#

Het resulterende document bevat ook een samenvattingspagina aan het einde van het document met de samenvatting van alle wijzigingen die in de vergelijking zijn gevonden. De klasse [Comparer][13] is de hoofdklasse waarmee u het vergelijkingsproces kunt controleren en uitvoeren. Het biedt verschillende methoden om twee of meer documenten te vergelijken. De methode [Add()][14] van deze klasse voegt een bestand toe aan het vergelijkingsproces. U kunt eenvoudig meerdere bestanden aan de vergelijking toevoegen door de methode Add() te gebruiken, zoals hieronder weergegeven:

comparer.Add("target1.docx");
comparer.Add("target2.docx");
comparer.Add("target3.docx");

De methode [Compare()][15] van de klasse [Comparer][13] vergelijkt de bron- en doeldocumenten. Deze methode benadrukt de verschillen en slaat de resultaten op in het bestandspad dat als invoerparameter is opgegeven.

Vergelijk Word-documenten met Stream in C#

U kunt twee of meer Word-documenten vergelijken met FileStream door de onderstaande stappen te volgen:

  1. Lees het bronbestand in een Stream-object
  2. Lees het doelbestand in een ander Stream-object
  3. Maak een instantie van de klasse [Comparer][13] met het bronobject Stream
  4. Roep de methode [Add()][14] aan met het doel Stream-object om toe te voegen aan de vergelijking
  5. Roep de methode [Compare()][15] aan met het uitvoerbestandspad Het volgende codevoorbeeld laat zien hoe Word-documenten te vergelijken met FileStream in C#.

Tekst van de wijzigingen ophalen met C#

U kunt de tekst van de gevonden wijzigingen in de vergelijking van Word-documenten programmatisch verkrijgen door de onderstaande eenvoudige stappen te volgen:

  1. Maak een instantie van de klasse [Comparer][13] met het bron-DOCX-bestandspad
  2. Roep de methode [Add()][14] aan met het DOCX-doelbestand om toe te voegen aan de vergelijking
  3. Herhaal de bovenstaande stap om ter vergelijking meer bestanden toe te voegen
  4. Roep de methode [Compare()][15] aan
  5. Roep de methode [GetChanges()][18] aan om de details van wijzigingen op te halen
  6. Toon de wijzigingen Het volgende codevoorbeeld laat zien hoe u de tekst van de wijzigingen ophaalt met C#.
Count of changes: 10
Change Type: Inserted, Text:
Change Type: Inserted, Text:  Company ‼ HYPERLINK "http://www.aspose.com/" ¶Aspose Pty Ltd§ Division GroupDocs
Change Type: Inserted, Text:
Change Type: Inserted, Text: Cool
Change Type: Deleted, Text: test
Change Type: Inserted, Text:
Change Type: Inserted, Text: signatures
Change Type: Inserted, Text:
Change Type: Deleted, Text: Customers
Change Type: Deleted, Text: GroupDocs is used by companies of all sizes across the globe, from large multinational firms to small freelance businesses. They come to us because they have a need for a simple, one-stop-shop, document management solution.

U kunt een lijst met wijzigingen tussen bron- en doelbestanden krijgen door de methode [GetChanges()][18] van de klasse [Comparer][13] aan te roepen. Het retourneert een lijst met [ChangeInfo][19] objecten. De klasse [ChangeInfo][19] vertegenwoordigt informatie over de wijzigingen en biedt verschillende eigenschappen om details van de wijzigingen op te halen, zoals [Text][20], [Type][21], enz.

Vergelijking van documenteigenschappen met C#

U kunt ingebouwde, aangepaste eigenschappen en variabele eigenschappen van Word-documenten programmatisch vergelijken door de onderstaande stappen te volgen:

  1. Maak een instantie van de klasse [Comparer][13] met het bron-DOCX-bestandspad
  2. Roep de methode [Add()][14] aan met het DOCX-doelbestand om toe te voegen aan de vergelijking
  3. Herhaal de bovenstaande stap om ter vergelijking meer bestanden toe te voegen
  4. Maak een instantie van de [CompareOptions][22]
  5. Stel [CompareVariableEigenschap][23] in op true
  6. Stel [CompareDocumentProperty][24] in op true
  7. Roep de methode [Compare()][25] aan met het uitvoerbestandspad en CompareOptions Het volgende codevoorbeeld laat zien hoe u documenteigenschappen kunt vergelijken met C#.
    Vergelijking van documenteigenschappen met C#

    Vergelijking van documenteigenschappen met C#

U kunt uw vergelijkingsproces verbeteren door verschillende vergelijkingsopties toe te passen. Voor dit doel kunt u met de klasse [CompareOptions][22] verschillende vergelijkingsopties instellen om specifieke resultaten te bereiken. Met de [CompareDocumentProperty][24] van deze klasse kunt u de vergelijking van ingebouwde en aangepaste eigenschappen in Word-indeling inschakelen. Met [CompareVariableProperty][23] kunt u de vergelijking van eigenschappen van variabelen in Word-indeling inschakelen.

Vergelijk wachtwoordbeveiligde Word-documenten met C#

U kunt twee of meer met een wachtwoord beveiligde Word-documenten programmatisch vergelijken door de onderstaande stappen te volgen:

  1. Maak een instantie van de klasse [LoadOptions][27].
  2. Geef het wachtwoord op voor het bronbestand
  3. Maak een instantie van de klasse [Comparer][13] met het bron-DOCX-bestandspad en LoadOptions
  4. Roep de methode [Add()][14] aan met het doel-DOCX-bestandspad en LoadOptions-instantie met wachtwoord
  5. Herhaal de bovenstaande stap om ter vergelijking meer bestanden toe te voegen
  6. Roep de methode [Compare()][15] aan met het uitvoerbestandspad Het volgende codevoorbeeld laat zien hoe u met een wachtwoord beveiligde Word-documenten kunt vergelijken met C#. Met de klasse [LoadOptions][27] kunt u extra opties opgeven tijdens het laden van een document. Het biedt de volgende eigenschappen om op te geven:
  • FontDirectories — Lijst met lettertypemappen die moeten worden geladen.
  • LoadText — geeft aan dat de doorgegeven tekenreeksen vergelijkingstekst zijn, geen bestandspaden (alleen voor tekstvergelijking).
  • Wachtwoord — Wachtwoord van document.

Bladwijzers in Word-documenten vergelijken met C#

U kunt bladwijzers die beschikbaar zijn in Word-documenten programmatisch vergelijken door de onderstaande stappen te volgen:

  1. Maak een instantie van de klasse [Comparer][13] met het bron-DOCX-bestandspad
  2. Roep de methode [Add()][14] aan met het DOCX-doelbestand om toe te voegen aan de vergelijking
  3. Herhaal de bovenstaande stap om ter vergelijking meer bestanden toe te voegen
  4. Maak een instantie van de [CompareOptions][22]
  5. Stel [Bladwijzers vergelijken][28] in op waar
  6. Roep de methode [Compare()][25] aan met het uitvoerbestandspad en CompareOptions Het volgende codevoorbeeld laat zien hoe u bladwijzers in Word-documenten kunt vergelijken met C#.
    Bladwijzers in Word-documenten vergelijken met C#

    Bladwijzers in Word-documenten vergelijken met C#

Met de eigenschap [CompareBookmarks][28] kunt u de beschikbare bladwijzers in de bron- en doeldocumenten vergelijken.

Ontvang een gratis licentie

U kunt de API uitproberen zonder evaluatiebeperkingen door [een gratis tijdelijke licentie][30] aan te vragen.

Conclusie

In dit artikel heb je geleerd twee of meer Word-documenten te vergelijken en verschillen te markeren met behulp van C#. Je hebt ook geleerd hoe je de lijst met gemarkeerde wijzigingen kunt krijgen. Bovendien heb je geleerd bladwijzers in Word-documenten programmatisch te vergelijken. Verder heb je geleerd hoe je met een wachtwoord beveiligde Word-documenten kunt vergelijken met C#. U kunt meer leren over GroupDocs.Comparison voor .NET API met behulp van de [documentatie][31]. Neem bij onduidelijkheden gerust contact met ons op via het [forum][32].

Zie ook