เปรียบเทียบไฟล์ CSV ใน Java

เราได้พูดคุยกันแล้ว วิธีพื้นฐานในการเปรียบเทียบไฟล์ CSV สองไฟล์ ภายในแอปพลิเคชัน Java ของเรา วันนี้ ในบทความนี้ เราจะเรียนรู้เพิ่มเติมเกี่ยวกับการเปรียบเทียบ CSV มากกว่าสองรายการใน Java เราจะหารือเพิ่มเติมเกี่ยวกับวิธีการเปรียบเทียบไฟล์ CSV ที่ป้องกันด้วยรหัสผ่าน สุดท้าย จะดูวิธีการยอมรับและปฏิเสธการเปลี่ยนแปลงที่พบโดยใช้ API การเปรียบเทียบภายในแอปพลิเคชัน Java

หัวข้อต่อไปนี้ครอบคลุมด้านล่าง:

Java API สำหรับการเปรียบเทียบไฟล์ CSV

GroupDocs.Comparison แสดง Java API ที่อนุญาตให้เปรียบเทียบไฟล์ CSV กับตัวเลือกต่างๆ ฉันจะใช้อีกครั้งเพื่อเปรียบเทียบไฟล์ CSV ภายในแอปพลิเคชัน Java นอกจากนี้ยังสนับสนุนการเปรียบเทียบไฟล์ CSV มากกว่าสองไฟล์ การยอมรับและปฏิเสธการเปลี่ยนแปลงที่ค้นพบ และการเปรียบเทียบไฟล์ที่ป้องกันด้วยรหัสผ่าน

ดาวน์โหลดและกำหนดค่า

รับไลบรารีการเปรียบเทียบ CSV จากส่วน ดาวน์โหลด สำหรับแอปพลิเคชัน Java ที่ใช้ Maven ให้เพิ่มการกำหนดค่าต่อไปนี้ภายใน pom.xml

<repository>
	<id>GroupDocsJavaAPI</id>
	<name>GroupDocs Java API</name>
	<url>http://repository.groupdocs.com/repo/</url>
</repository>
<dependency>
        <groupId>com.groupdocs</groupId>
        <artifactId>groupdocs-comparison</artifactId>
        <version>22.3</version> 
</dependency>

ตัวอย่างการเรียกใช้คุณลักษณะต่างๆ มีอยู่ใน GitHub ไปที่ documentation และ API Reference เพื่อขอคำแนะนำ

เปรียบเทียบไฟล์ CSV ใน Java

การเปรียบเทียบพื้นฐานของไฟล์ CSV สองไฟล์โดยใช้ Java ได้ถูกกล่าวถึงแล้วในบทความแยกต่างหาก ที่นั่น เราตรวจสอบซอร์สโค้ด Java การเปรียบเทียบไฟล์ อินพุตตัวอย่าง และไฟล์เอาต์พุตการเปรียบเทียบ คุณสามารถเยี่ยมชมบทความนั้นได้ก่อนที่จะดำเนินการต่อ

เปรียบเทียบไฟล์ CSV มากกว่าสองไฟล์ใน Java

หากข้อกำหนดคือการเปรียบเทียบไฟล์ CSV มากกว่าสองไฟล์ ก็จะค่อนข้างคล้ายกันเนื่องจากเรากำลังเปรียบเทียบไฟล์เพียงสองไฟล์ เพียงเพิ่มไฟล์ที่สามไปยังวัตถุตัวเปรียบเทียบ

ต่อไปนี้เป็นขั้นตอนในการเปรียบเทียบไฟล์ CSV มากกว่าสองไฟล์ใน Java

  • สร้างอินสแตนซ์ของคลาส Comparer ด้วยไฟล์ CSV ไฟล์แรก
  • เพิ่มไฟล์ที่สองโดยใช้วิธีการเพิ่มที่เหมาะสม
  • ในทำนองเดียวกัน ให้เพิ่มไฟล์ CSV อื่นๆ ให้มากที่สุดโดยใช้วิธีเพิ่ม
  • สุดท้ายเรียกวิธีการเปรียบเทียบเพื่อรับผลการเปรียบเทียบ

ซอร์สโค้ด Java ต่อไปนี้เปรียบเทียบไฟล์ CSV หลายไฟล์ ผลการเปรียบเทียบจะสร้างไฟล์ CSV และ HTML แยกกัน ไฟล์เอาต์พุต HTML เน้นการเปลี่ยนแปลงที่ระบุในสีต่างๆ

// เปรียบเทียบไฟล์ CSV หลายไฟล์ (มากกว่า 2) ไฟล์ใน Java

Comparer comparer = new Comparer("path/comma-separated-file-1.csv");
comparer.add("path/comma-separated-file-2.csv");
comparer.add("path/comma-separated-file-3.csv");
// ...
// ...
final Path outputFilePath = comparer.compare("path/comparison-result.csv");

เปรียบเทียบไฟล์ CSV ที่ป้องกันด้วยรหัสผ่านใน Java

มีตัวเลือกต่าง ๆ ที่สามารถใช้ได้ในขณะที่โหลดเอกสารต่าง ๆ หากไฟล์ CSV ของคุณมีการป้องกันด้วยรหัสผ่าน คุณสามารถระบุรหัสผ่านขณะโหลดได้ ขั้นตอนที่เหลือยังคงเหมือนเดิมสำหรับการเปรียบเทียบไฟล์ CSV ที่ป้องกันด้วยรหัสผ่านหลายไฟล์

ต่อไปนี้เป็นขั้นตอนในการเปรียบเทียบไฟล์ CSV ที่ป้องกันด้วยรหัสผ่านใน Java

  • เตรียมตัวเลือกการโหลดโดยใช้คลาส LoadOptions และตั้งรหัสผ่านเพื่อเปิดไฟล์ CSV
  • โหลดไฟล์ CSV ไฟล์แรกเพื่อเปรียบเทียบในขณะที่เริ่มต้นคลาส Comparer
  • เพิ่มไฟล์ที่สองโดยใช้วิธีการเพิ่มที่เหมาะสม
  • ในทำนองเดียวกัน ให้เพิ่มไฟล์ CSV อื่นๆ ได้มากเท่าๆ กันโดยใช้วิธีเพิ่มใดก็ได้
  • สุดท้าย เรียกใช้วิธีการเปรียบเทียบเพื่อรับผลการเปรียบเทียบของไฟล์ที่เพิ่มทั้งหมด

ซอร์สโค้ดต่อไปนี้เปรียบเทียบไฟล์ CSV ที่ป้องกันด้วยรหัสผ่านหลายไฟล์ใน Java และสร้างผลการเปรียบเทียบ

// เปรียบเทียบไฟล์ CSV ที่ป้องกันด้วยรหัสผ่านโดยใช้ Java

Comparer comparer = new Comparer("path/comma-separated-file-1.csv", new LoadOptions("file1-password"));
comparer.add("path/comma-separated-file-2.csv", new LoadOptions("file2-password"));
final Path outputFilePath = comparer.compare("path/comparison-result.csv");

ยอมรับหรือปฏิเสธการเปลี่ยนแปลงที่ระบุของไฟล์ CSV ใน Java

เช่นเดียวกับคุณสมบัติการติดตามการเปลี่ยนแปลงของ Microsoft Word ที่ช่วยให้เรายอมรับหรือปฏิเสธการเปลี่ยนแปลงที่ทำขึ้นภายในเอกสาร คุณสามารถใช้คุณสมบัติเดียวกันนี้ในแอปพลิเคชัน Java หลังจากดำเนินการเปรียบเทียบไฟล์แล้ว คุณสามารถยอมรับหรือปฏิเสธการเปลี่ยนแปลงที่ระบุแต่ละรายการได้ ต่อไปนี้เป็นขั้นตอนในการเปรียบเทียบไฟล์ CSV และยอมรับหรือปฏิเสธการเปลี่ยนแปลงที่ระบุ

  • โหลดไฟล์ต้นฉบับและไฟล์ CSV เป้าหมายโดยใช้คลาส Comparer
  • ทำการเปรียบเทียบไฟล์ที่โหลดโดยใช้วิธีเปรียบเทียบ
  • ดึงข้อมูลการเปลี่ยนแปลงที่ระบุโดยใช้เมธอด getChanges
  • ตอนนี้คุณสามารถสำรวจการเปลี่ยนแปลงและตั้งค่า ComparisonAction ตามการเปลี่ยนแปลงแต่ละรายการ
    • สำหรับการเปลี่ยนแปลงที่ตกลง คุณสามารถตั้งค่าเป็นยอมรับ
    • สำหรับการเปลี่ยนแปลงที่ไม่เห็นด้วย คุณสามารถตั้งค่าเป็นปฏิเสธ
  • สุดท้าย เรียกใช้เมธอด applyChanges เพื่อรับเอกสารผลลัพธ์ที่มีการเปลี่ยนแปลงที่นำไปใช้

ซอร์สโค้ด Java ต่อไปนี้เปรียบเทียบไฟล์ CSV สองไฟล์ จากนั้นจึงยอมรับและปฏิเสธการเปลี่ยนแปลงที่พบ

// ยอมรับหรือปฏิเสธการเปลี่ยนแปลงที่ระบุโดยการเปรียบเทียบไฟล์ CSV ใน Java

Comparer comparer = new Comparer("path/comma-separated-file-1.csv");
comparer.add("path/comma-separated-file-2.csv");

comparer.compare("path/comparison-result.csv");

ChangeInfo[] changes = comparer.getChanges();
changes[0].setComparisonAction(ComparisonAction.REJECT);
changes[1].setComparisonAction(ComparisonAction.ACCEPT);

comparer.applyChanges("path/comparison-result.csv", new SaveOptions(), new ApplyChangeOptions(changes));

รับใบอนุญาต API ฟรี

คุณสามารถรับ ใบอนุญาตชั่วคราวฟรี เพื่อใช้ API โดยไม่มีข้อจำกัดในการประเมิน

บทสรุป

โดยสรุปแล้ว วันนี้เราได้เรียนรู้วิธีการของ Java ในการเปรียบเทียบไฟล์ CSV ตั้งแต่สองไฟล์ขึ้นไป นอกจากตัวเลือกในการยอมรับและปฏิเสธการเปลี่ยนแปลงที่ระบุแล้ว เรายังเรียนรู้ที่จะเปรียบเทียบไฟล์ CSV ที่ป้องกันด้วยรหัสผ่านภายในแอปพลิเคชัน Java

คุณสามารถค้นหาตัวเลือกอื่นๆ มากมายเพื่อปรับแต่งผลการเปรียบเทียบ คุณสามารถตั้งค่าความไวในการเปรียบเทียบ แสดงเฉพาะหน้าสรุป ละเว้นช่องว่าง และอื่นๆ อีกมากมาย เรียนรู้เกี่ยวกับคุณลักษณะเหล่านี้จาก เอกสารประกอบ

คุณสามารถเริ่มสร้างแอปพลิเคชันเปรียบเทียบของคุณเองสำหรับ รูปแบบเอกสารที่รองรับ ต่างๆ สำหรับข้อสงสัย ติดต่อเราผ่านทาง ฟอรัม

ดูสิ่งนี้ด้วย