Как сравнить два документа ODS программно на Java?
-
27-10-2019 - |
Вопрос
Я генерирую электронную таблицу ODS в качестве вывода из программы Java. В настоящее время я пытаюсь настроить тестовые примеры для того же. Для этого мне нужно сравнить ожидаемые и фактические результаты. В настоящее время я использую Odftoolkit для создания документа.
Как сравнить две электронные таблицы (ожидаемые и фактические) в программе Java?
Решение
В случае, если кому -то нужно решение, вот оно
public static boolean contentsAreIdentical(OdfSpreadsheetDocument document1, OdfSpreadsheetDocument document2) {
try {
ByteArrayInputStream bis1 = (ByteArrayInputStream) document1.getContentStream();
ByteArrayInputStream bis2 = (ByteArrayInputStream) document2.getContentStream();
if(bis1.available() != bis2.available()) {
return false;
}
while(true){
int a = bis1.read();
int b = bis2.read();
if(a != b){
return false;
}
if(a == -1){
return true;
}
}
} catch (Exception e) {
//Do something with exception
}
return false;
}
Не связан с StackOverflow