Сохранить книгу, используя Apache POI - PullRequest
0 голосов
/ 24 марта 2020

Моя цель - открыть существующий файл Excel и создать новый именованный диапазон. Кажется, что создание названного диапазона работает, но я должен сохранить файл позже (я думаю). При сохранении с использованием wb.write(fileOut); генерируется файл размером 0 КБ.

Нужно ли перебирать все данные и отправлять их в OutputStream? Или есть другая возможность (может быть, с помощью FileInputStream?)

import org.apache.poi.ss.usermodel.*
import org.apache.poi.hssf.usermodel.*
import org.apache.poi.xssf.usermodel.*
import org.apache.poi.ss.util.*
import org.apache.poi.ss.usermodel.*
import java.io.*

xlFileAddress = '/tomcat-etl/webapps/etlserver/data/files/ProductSales.xlsx';

Workbook wb = WorkbookFactory.create(new File(xlFileAddress));

Sheet sheet = wb.getSheetAt(0);

// create named range
Name namedCell = wb.createName();
namedCell.setNameName("newName1");
reference = "Sheet1!\$A\$1"; // area reference
namedCell.setRefersToFormula(reference);

try {
    OutputStream fileOut = new FileOutputStream(xlFileAddress)
    wb.write(fileOut);
}

catch(Exception e) {
    LOG.info("Exception:")
}

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...