So sánh tệp CSV trong Java

Chúng tôi đã thảo luận cách cơ bản để so sánh hai tệp CSV trong các ứng dụng Java của chúng tôi. Hôm nay, trong bài viết này, chúng ta sẽ tiếp tục tìm hiểu cách so sánh nhiều hơn hai CSV trong Java. Chúng tôi sẽ thảo luận thêm về cách so sánh các tệp CSV được bảo vệ bằng mật khẩu. Cuối cùng, sẽ xem xét cách chấp nhận và từ chối các thay đổi được tìm thấy bằng cách sử dụng API so sánh trong ứng dụng Java.

Các chủ đề sau đây được đề cập dưới đây:

API Java để so sánh các tệp CSV

GroupDocs.Comparison giới thiệu API Java cho phép so sánh các tệp CSV với các tùy chọn khác nhau. Tôi sẽ lại sử dụng nó để so sánh các tệp CSV trong ứng dụng Java. Ngoài ra, nó hỗ trợ so sánh nhiều hơn hai tệp CSV, chấp nhận và từ chối các thay đổi được phát hiện cũng như so sánh các tệp được bảo vệ bằng mật khẩu.

Tải xuống và định cấu hình

Tải thư viện so sánh CSV từ phần tải xuống. Đối với các ứng dụng Java dựa trên Maven, hãy thêm cấu hình sau vào tệp 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>

Các ví dụ đang chạy cho các tính năng của nó cũng có sẵn trên GitHub. Truy cập tài liệuTham khảo API của nó để được hướng dẫn.

So sánh tệp CSV trong Java

so sánh cơ bản của hai tệp CSV bằng Java đã được thảo luận trong một bài viết riêng. Ở đó, chúng tôi đã xem mã nguồn Java so sánh tệp, đầu vào mẫu và tệp đầu ra so sánh. Bạn có thể truy cập bài viết đó trước khi bạn tiếp tục.

So sánh nhiều hơn hai tệp CSV trong Java

Nếu yêu cầu là so sánh nhiều hơn hai tệp CSV, thì điều này khá giống nhau vì chúng tôi chỉ so sánh hai tệp. Chỉ cần thêm tệp thứ ba vào đối tượng So sánh.

Sau đây là các bước để so sánh nhiều hơn hai tệp CSV trong Java.

  • Khởi tạo lớp So sánh với tệp CSV đầu tiên.
  • Thêm tệp thứ hai bằng phương pháp thêm thích hợp.
  • Tương tự, thêm bao nhiêu tệp CSV khác bằng cách sử dụng các phương thức thêm.
  • Cuối cùng, gọi phương thức so sánh để lấy kết quả so sánh.

Mã nguồn Java sau so sánh nhiều tệp CSV. Theo kết quả so sánh, nó tạo ra các tệp CSV và HTML riêng biệt. Tệp đầu ra HTML làm nổi bật các thay đổi đã xác định bằng các màu khác nhau.

// So sánh Nhiều (hơn 2) tệp CSV trong 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");

So sánh các tệp CSV được bảo vệ bằng mật khẩu trong Java

Có nhiều tùy chọn khả dụng khác nhau có thể được sử dụng trong khi tải các tài liệu khác nhau. Nếu tệp CSV của bạn được bảo vệ bằng mật khẩu, bạn có thể cung cấp mật khẩu trong khi tải. Phần còn lại của quy trình vẫn giữ nguyên để so sánh nhiều tệp CSV được bảo vệ bằng mật khẩu.

Sau đây là các bước để so sánh các tệp CSV được bảo vệ bằng mật khẩu trong Java.

  • Chuẩn bị các tùy chọn tải bằng lớp LoadOptions và đặt mật khẩu để mở tệp CSV.
  • Bây giờ hãy tải tệp CSV đầu tiên để so sánh trong khi khởi tạo lớp So sánh.
  • Thêm tệp thứ hai bằng phương pháp thêm thích hợp.
  • Tương tự, thêm bao nhiêu tệp CSV khác bằng bất kỳ phương thức thêm nào.
  • Cuối cùng, gọi phương thức so sánh để lấy kết quả so sánh của tất cả các tệp đã thêm.

Mã nguồn sau so sánh nhiều tệp CSV được bảo vệ bằng mật khẩu trong Java và tạo kết quả so sánh.

// So sánh các tệp CSV được bảo vệ bằng mật khẩu bằng 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");

Chấp nhận hoặc từ chối các thay đổi đã xác định của tệp CSV trong Java

Cũng giống như tính năng theo dõi thay đổi của Microsoft Word cho phép chúng tôi chấp nhận hoặc từ chối các thay đổi đã thực hiện trong tài liệu. Bạn có thể triển khai tính năng tương tự trong các ứng dụng Java. Sau khi thực hiện so sánh tệp, bạn có thể chấp nhận hoặc từ chối từng thay đổi đã xác định. Sau đây là các bước để so sánh các tệp CSV và chấp nhận hoặc từ chối các thay đổi đã xác định.

  • Tải nguồn và cũng như tệp CSV đích bằng cách sử dụng lớp So sánh.
  • Thực hiện so sánh các tệp đã tải bằng phương pháp so sánh.
  • Tìm nạp các thay đổi đã xác định bằng phương thức getChanges.
  • Giờ đây, bạn có thể duyệt qua các thay đổi và đặt hành động so sánh tương ứng cho từng thay đổi.
    • Đối với những thay đổi đã đồng ý, bạn có thể đặt nó là CHẤP NHẬN.
    • Đối với những thay đổi không đồng ý, bạn có thể đặt nó là TỪ CHỐI.
  • Cuối cùng, gọi phương thức applyChanges để lấy tài liệu kết quả có các thay đổi được áp dụng.

Mã nguồn Java sau so sánh hai tệp CSV, sau đó chấp nhận và từ chối các thay đổi được tìm thấy.

// Chấp nhận hoặc từ chối các thay đổi đã xác định bằng cách so sánh các tệp CSV trong 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));

Nhận giấy phép API miễn phí

Bạn có thể nhận giấy phép tạm thời miễn phí để sử dụng API mà không bị giới hạn đánh giá.

Sự kết luận

Tóm lại, hôm nay chúng ta đã học cách Java so sánh hai hoặc nhiều tệp CSV. Cùng với tùy chọn chấp nhận và từ chối các thay đổi đã xác định, chúng tôi cũng đã học cách so sánh các tệp CSV được bảo vệ bằng mật khẩu trong các ứng dụng Java.

Bạn có thể tìm thấy nhiều tùy chọn khác để tùy chỉnh kết quả so sánh. Bạn có thể đặt độ nhạy so sánh, chỉ hiển thị trang tóm tắt, bỏ qua các khoảng trống, v.v. Tìm hiểu về các tính năng này từ tài liệu.

Bạn có thể bắt đầu xây dựng các ứng dụng so sánh của riêng mình cho nhiều định dạng tài liệu được hỗ trợ. Đối với các truy vấn, liên hệ với chúng tôi qua diễn đàn.

Xem thêm