Tôi có hai tệp xml (a.xml và b.xml) trong hệ thống tệp của tôi (iPhone). Bây giờ tôi muốn biết liệu các tệp này có chứa chính xác cùng một dữ liệu hay không. Hầu hết thời gian, sự so sánh này là đúng, bởi vì b.xml là kết quả của một hoạt động copyItemAtPath:. Trừ khi nó được ghi đè bởi thông tin mới hơn. Cách nào hiệu quả nhất để so sánh các tệp này?So sánh hai tệp xml trong Mục tiêu-C
- tôi có thể đọc nội dung của các tập tin như chuỗi và sau đó so sánh chuỗi
- tôi có thể phân tích các tập tin và so sánh một số yếu tố chính
- Tôi đoán có một cách rất thẳng thắn, rằng không cần phải diễn giải tệp, nhưng cho phép tôi so sánh ở cấp độ thấp hơn.
Bất kỳ đề xuất nào đều được hoan nghênh.
Cảm ơn trước
Sjakelien
Cập nhật:
tôi đã kết thúc làm điều này:
oldData = [NSData dataWithContentsOfFile:PathToAXML];
newData = [NSData dataWithContentsOfFile:PathToBXML];
và sau đó so sánh nó với:
[newData isEqualToData:oldData];
Các câu hỏi vẫn là: là hiệu quả hơn:
oldData = [NSString dataWithContentsOfFile:PathToAXML];
newData = [NSString dataWithContentsOfFile:PathToBXML];
[newData isEqualToString:oldData];
Đó là cách để thực hiện. Và cũng khá hiệu quả, tôi đoán vậy. Tôi sẽ cần phải lưu trữ một nơi nào đó mặc dù. – Sjakelien
Đây là IMO thay thế tốt. – Troggy
Bạn không cần phải lưu trữ ngày ở một nơi khác nếu bạn bảo quản nó khi làm bản sao. Tôi nghĩ rằng NSFileManager có thể làm điều này. –