Откройте EXISTING XLS в Apache POI
У меня есть существующий файл (C:\wb.xls), который я хочу открыть и внести изменения. Как в Apachie POI вы открываете существующий файл? Вся документация, которую я нахожу, связана с созданием нового файла. И если вы знаете, как вставить новую строку вверху файла xls или как автоматически отформатировать ширину столбцов?
2 ответа
Используйте один из следующих
XSSFWorkbook wb = new XSSFWorkbook(new FileInputStream(xlFileAddress));
ИЛИ ЖЕ
Workbook wb = WorkbookFactory.create(new File(xlFileAddress));
ИЛИ ЖЕ
Workbook wb = WorkbookFactory.create(new FileInputStream(xlFileAddress));
а затем используйте wb для создания / чтения / обновления листов / строк / ячеек, что вы хотите. Для подробностей посетите здесь. Это определенно поможет вам.
Вы пытались прочитать Apache POI HowTo "Чтение или изменение существующего файла"? Это должно покрыть вас...
По сути, то, что вы хотите сделать, взято из QuickGuide, например, для загрузки файла
Workbook wb = WorkbookFactory.create(new File("MyExcel.xls"));
Sheet s = wb.getSheetAt(0);
// Get the 11th row, creating if not there
Row r1 = s.getRow(10);
if (r1 == null) r1 = s.createRow(10);
// Get the 3rd column, creating if not there
Cell c2 = r1.getCell(2, Row.CREATE_NULL_AS_BLANK);
// Set a string to be the value
c2.setCellValue("Hello, I'm the cell C10!");
// Save
FileOutputStream out = new FileOutputStream("New.xls");
wb.write(out);
out.close();