Można utworzyć plik XLS z szablonu XLS.
Ale aby to zrobić, należy utworzyć kopię szablonu za każdym razem, gdy trzeba użyć szablonu. Jeśli nie, edytujesz oryginalny szablon (czego nie chcesz).
Tak, trzeba najpierw uzyskać plik szablonu:
URL url = Thread.currentThread().getContextClassLoader().getResource("templates/template.xls");
File file = new File(url.getPath());
Skopiuj plik szablonu:
try (FileOutputStream fileOutputStream = new FileOutputStream("/home/jake/fileCopiedFromTemplate.xls")) {
Files.copy(file.toPath(), fileOutputStream);
Workbook workbook = new HSSFWorkbook();
workbook.write(fileOutputStream);
}
dostęp nowy skopiowany plik:
FileInputStream inp = new FileInputStream("/home/jake/fileCopiedFromTemplate.xls");
Tworzenie Workbook
, więc możesz pisać w nowym pliku:
Workbook workbook = WorkbookFactory.create(inp);
Po napisać w skoroszycie:
try (FileOutputStream fileOut = new FileOutputStream("/home/jake/fileCopiedFromTemplate.xls")) {
workbook.write(fileOut);
}
Końcówka utworzyć plik szablonu XLS to zaznaczyć szablon z jakiejś zmiennej na lokalizowanie pozycji, które chcesz wypełnić.Jak:
------------------------------------
| | Columna A | Column B |
------------------------------------
| 1 | Some description |
------------------------------------
| 2 | {person.name} | {person.age} |
------------------------------------
Próbowałem to samo załadowanie makra z poi 3,13 i 3,15 , ale to nie działa dla mnie. Mam na myśli po zapisaniu pliku, brakuje makr. Masz jakiś pomysł? –