Есть такой код, он работает для редактирования существующих данных. Вопрос в том, как добавить новую строку в .xls файл. Так как обращение к пустой ячейке генерирует ошибку NullPointerException.
public class UpdateExcel {
public static void main(String[] args) throws IOException {
File file = new File("fileName");
// Read XSL file
FileInputStream inputStream = new FileInputStream(file);
// Get the workbook instance for XLS file
HSSFWorkbook workbook = new HSSFWorkbook(inputStream);
// Get first sheet from the workbook
HSSFSheet sheet = workbook.getSheetAt(0);
HSSFCell cell = sheet.getRow(1).getCell(2);
cell.setCellValue(cell.getNumericCellValue() * 2);
inputStream.close();
// Write File
FileOutputStream out = new FileOutputStream(file);
workbook.write(out);
out.close();
}
}
я так понимаю что NullPointerException падает в
cell.setCellValue(cell.getNumericCellValue() * 2);
добавьте проверку
if (cell == null) {
cell = sheet.getRow(1).createCell(2);
}
Сборка персонального компьютера от Artline: умный выбор для современных пользователей