Как я могу получить доступ к электронным таблицам в формате открытого документа (.ods) с помощью Java?
Я хочу читать, писать и создавать электронные таблицы в формате открытого документа с Java. И я хочу, чтобы получившаяся Java-программа работала на компьютере без OpenOffice.org или других ODS-совместимых программ. Существует ли библиотека для доступа к этому формату?
3 ответа
Решение
Посмотрите на jOpenDocument: http://www.jopendocument.org/documentation.html
Особенно: http://www.jopendocument.org/start_spreadsheet_3.html
Первая библиотека импорта
<dependency>
<groupId>com.github.miachm.sods</groupId>
<artifactId>SODS</artifactId>
<version>1.6.2</version>
</dependency>
тогда это пример того, как читать первый столбец первого листа
public static List<String> readColumnA(String filePath) {
List<String> movieList = new ArrayList<>();
try {
SpreadSheet spread = new SpreadSheet(new File(filePath));
// System.out.println("Number of sheets: " + spread.getNumSheets());
Sheet sheet = spread.getSheets().get(0);
// System.out.println("In sheet " + sheet.getName());
Range movies = sheet.getDataRange();
Object[][] movieColumn = movies.getValues();
for (int i = 0; i < sheet.getMaxRows(); i++) {
movieList.add(movieColumn[i][0].toString());
}
} catch (IOException e) {
e.printStackTrace();
}
return movieList;
}