【问题标题】:How to set up google-diff-match-patch C# library如何设置 google-diff-match-patch C# 库
【发布时间】:2014-10-13 18:09:02
【问题描述】:

所以我是新手,我在互联网上找不到正确的答案。 在这里挖掘一点后,我想到了。

【问题讨论】:

    标签: c# visual-studio google-diff-match-patch


    【解决方案1】:

    here下载google-diff-match-patch

    你已经解压了,打开你的 microsoft visual studio 项目

    转到查看->解决方案资源管理器或按 Ctrl+Alt+L

    在解决方案资源管理器中右键单击您的项目名称并转到添加->现有项目...或按 Shift+Alt+A

    在出现的对话框中找到您的 diff-match-patch 文件夹并进入 csharp 目录并选择 DiffMatchPatch.cs 并点击添加

    然后在解决方案资源管理器中右键单击 References->Add Reference...

    搜索 System.Web 并添加它。

    现在回到你的程序(在我的例子中是 Form1.cs)并输入

    using DiffMatchPatch;
    

    现在您可以在 C# 程序中使用 diff-match-patch 库的所有 functions

    【讨论】:

      【解决方案2】:

      或者,添加 Nuget 包 DiffMatchPatch 并将其添加到您的项目中。

      一个演示代码如下:

      using System;
      using System.IO;
      using DiffMatchPatch;
      
      namespace ConsoleApp_DMPTrial
      {
           class Program
              {
                  static void Main(string[] args)
                  {
                      var dmp = DiffMatchPatchModule.Default;
      
                      string file1Content = "";
                      string file2Content = "";
      
                      using (StreamReader sr = new StreamReader("file1.json"))
                      {
                          file1Content = sr.ReadToEnd();
                      }
      
                      using (StreamReader sr = new StreamReader("file2.json"))
                      {
                          file2Content = sr.ReadToEnd();
                      }
      
                      var diffs = dmp.DiffMain(file1Content, file2Content);
      
                      dmp.DiffCleanupSemantic(diffs);
      
                      for (int i = 0; i < diffs.Count; i++)
                      {
                          Console.WriteLine(diffs[i]);
                      }
      
                      Console.ReadLine();
                  }
              }
      }
      
      
      
      

      【讨论】:

      • 我对在 JSON 文件中进行比较特别感兴趣,因此使用了 Stream Reader,否则它也适用于普通字符串。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-12-13
      • 2012-09-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多