Когда я запускаю этот код в IDE NetBeans 8.2, он обновляет файл Excel без происшествий. Однако, когда я собираю JAR, я получаю следующую ошибку при запуске этой части кода: «java.io.FileNotFoundException: file: \ D: \ Projects \ ht \ ht \ dist \ ht.jar! \ HTAlarms_1.xlsx». Он прекрасно читает файл Excel, однако я делаю что-то не так, когда пытаюсь записать файл Excel.
public void setAlarmFileContents() {
System.out.println("Inside of setAlarmFileContents");
String fileName = "HTAlarms_1.xlsx";
ClassLoader classLoader = new ht().getClass().getClassLoader();
InputStream is = getClass().getClassLoader().getResourceAsStream(fileName);
try {
Workbook workbook = WorkbookFactory.create(is);
Sheet sheet = workbook.getSheetAt(0);
Row row = sheet.getRow(123);
Cell cell = row.createCell(2);
cell.setCellValue("Testing Data Worked inside of IDE");
is.close();
System.out.println("Input stream is closed");
File file = new File(classLoader.getResource(fileName).getFile());
FileOutputStream outputStream = new FileOutputStream(file);
workbook.write(outputStream);
workbook.close();
outputStream.close();
System.out.println("Streams closed data set?");
} catch (IOException | EncryptedDocumentException ex) {
ex.printStackTrace();
}
}