השוואת מסמכים היא אחת הדרישות הנפוצות ביותר בעולם התכנות של ימינו. בין אם מדובר בהשוואת קובצי word, השוואה בין קבצי אקסל, מסמכי PDF או אפילו השוואה בין קובצי טקסט או כל פורמט מסמך אחר, הדיוק הוא גורם המפתח בעת ההשוואה.

השווה קבצים עם API להשוואת מסמכים עבור מפתחי NET

מאמר זה ייתן לכם את הרעיון כיצד GroupDocs.Comparison מאפשר למתכנתים להשוות בין שני מסמכים או יותר בדרכים רבות. ממשקי API On-Premise של GroupDocs.Comparison זמינים כעת עבור .NET ו-Java, עם זאת, מאמר זה נוטה למפתחי C#.

השווה בין קבצי Excel, Word או כל מסמך ב-C#

GroupDocs.Comparison מאפשר למפתחים להשוות בין שני מסמכים (למעשה יותר מ-2. המסמך המתקבל מציג את השינויים בין שני הקבצים בהשוואה. הקוד המוזכר להלן מראה כיצד ניתן להשוות בין שני קבצי אקסל ב-3 שורות קוד בלבד ב-C#.

  1. הצג את האובייקט Comparer עם נתיב מסמך המקור.
  2. התקשר לשיטת Add כדי לציין את נתיב מסמך היעד.
  3. התקשר לשיטת השוואה.
  4. זהו זה.
using (Comparer comparer = new Comparer(“source.xlsx”))
{
    comparer.Add(“target.xlsx”);
    comparer.Compare(“result.xlsx”);
}

השוואת גיליונות אלקטרוניים של Excel או מסמכי Microsoft Word הם רק חלק מקבוצת המשנה של ההשוואות הנתמכות על ידי ה-.NET API של GroupDocs.Comparison. להלן רשימת סוגי המסמכים הנתמכים והפורמטים שלהם. אתה יכול לבקר בתיעוד כדי להישאר מעודכן.

| סוג מסמך | פורמטי קבצים |

| — | —— |

| עיבוד תמלילים | DOC, DOCX, DOCM, DOT, DOTX, DOTM, RTF, TXT |

| גיליונות אלקטרוניים | XLS, XLSX, XLSM, XLT, XLTM, XLSB, XLSM, CSV |

| מצגות | PPT, PPTX, PPS, PPSX, POT, POTX |

| OpenDocument | ODT, ODP, OTP, ODS, OTT |

| שרטוטי Microsoft Visio | VSD, VSDX, VSS, VST, VDX |

| נייד | PDF |

| הערות | ONE |

| אינטרנט | HTM, HTML, MHT, MHTML |

| ספרים אלקטרוניים | MOBI |

| תמונות | BMP, GIF, JPG, JPEG, PNG, DICOM, DJVU, DWG, DXF |

| מיילים | EML, EMLX, MSG |

השווה בין שני גיליונות אלקטרוניים או מסמכי OneNote ב-C#

לאחר שחרורו של GroupDocs.Comparison עבור .NET 20.2, ה-API תומך כעת:

  • השוואה של יותר משני גיליונות אלקטרוניים של Microsoft Excel ו-OpenOffice (XLS, XLSX, ODS, CSV, …)
  • השווה מספר מסמכי Microsoft OneNote.

ה-API כבר תומך בהשוואה של קבצים מרובים עבור פורמטים שונים של מסמכים. קטע הקוד הבא מראה באיזו מהירות ניתן להשוות קבצי אקסל מרובים ב-C#.

using (Comparer comparer = new Comparer(“source.xlsx”)
{
    comparer.Add(“target1.xlsx”);
    comparer.Add(“target2.xlsx”);
    comparer.Add(“target3.xlsx”);
    comparer.Compare(“result.xlsx”);
}

השווה מסמכים מ-Stream ב-C#

כמתכנת, אתה לא רק רשאי להשוות מסמכים הזמינים באחסון מקומי, למעשה, אנו יכולים להשוות מסמכים מהזרם.

  1. פשוט אתחל את האובייקט Comparer עם זרם מסמך המקור.
  2. התקשר לשיטת Add וציין את זרם היעד.
  3. התקשר לשיטת השווה
using (Comparer comparer = new Comparer(File.OpenRead(“source.docx”))
{
    comparer.Add(File.OpenRead(“target1.docx”));
    comparer.Add(File.OpenRead(“target2.docx”));
    comparer.Add(File.OpenRead(“target3.docx”));
    comparer.Compare(File.Create(“result.docx”));
}

השווה בין מסמכי Word מוגנים באמצעות סיסמה / גיליון אלקטרוני של Excel ב-C#

הגנת סיסמה נפוצה בתיעוד הרשמי. באמצעות ה-API של השוואת מסמכים .NET, הוא מאפשר למשתמשים/מפתחים שלו להשוות מסמכים מוגנים באמצעות סיסמה.

רק שינוי קטן בקוד בהשוואה לקוד להשוואת מסמכים שאינם מוגנים באמצעות סיסמה. בזמן טעינת המסמך, השתמש ב-LoadOptions כדי לציין את סיסמת המסמך. להלן קוד ההשוואה לדוגמה לעזרתך.

using (Comparer comparer = new Comparer("source.docx", new LoadOptions() { Password = "1234" }))
{
    comparer.Add("target1.docx", new LoadOptions() { Password = "5678" });
    comparer.Add("target2.docx", new LoadOptions() { Password = "5678" });
    comparer.Add("target3.docx", new LoadOptions() { Password = "5678" });
    comparer.Compare("result.docx");
}

השוואה של מסמכים עם הגדרות ספציפיות

צעד אחד לפני ההשוואה בלבד, באמצעות הקוד הדומה לקוד המוזכר להלן, אתה יכול להשוות מסמכים מרובים עם הגדרות ההשוואה המותאמות אישית שלך.

CompareOptions מספק לך את ההזדמנות לציין את אפשרויות ההשוואה שלך כמו סגנון גופן לשינויים שזוהו וכו'.

using (Comparer comparer = new Comparer(“source.docx”)
{
    comparer.Add(“target1.docx”);
    comparer.Add(“target2.docx”);
    comparer.Add(“target3.docx”);
    CompareOptions compareOptions = new CompareOptions()
    {
        InsertedItemStyle = new StyleSettings()
        {
            FontColor = System.Drawing.Color.Yellow
        }
    };
    comparer.Compare(“result.docx”, compareOptions);
}

השוואה בין קבצי שפת תכנות ב-C#

GroupDocs מגדילים ללא הרף את התמיכה כדי להשוות פורמטים נוספים של קבצים. לאחר המהדורה גרסה 20.2, כעת תוכל גם להשוות קבצי JSON באמצעות .NET API. להלן תבניות הקבצים של שפת התכנות שנוספו לאחרונה לרשימת פורמטי המסמכים הנתמכים:

  • ActionScript
  • אסמבלר
  • מבוסס C
  • CSharp
  • קִצבִּי
  • JavaScript
  • Java
  • JSON
  • יעד C/C++
  • פרל
  • PHP
  • פִּיתוֹן
  • אוֹדֶם
  • סקאלה
  • Shell/Batch Script, Log, Diff, Config, LESS
  • SQL

בוא נדבר

אתה יכול לבנות אפליקציה משלך באמצעות התכונות המודגשות לעיל. נשמח אם תיצור איתנו קשר בפורום כדי לדון, לפתור בעיה או לשתף את המשוב שלך.