private void saveFile(File file) throws IOException { try (BufferedWriter out = new BufferedWriter(new FileWriter(file))) { System.out.println(file.getAbsolutePath()); String[] split = previousFileContent.split("\n"); String fileContent = ""; for (int i = 0; i < split.length; i++) { if (!split[i].isEmpty()) { if (split[i].charAt(0) == ';') { fileContent += split[i] + "\n"; } else { fileContent += ";" + split[i] + "\n"; } } } SystemDate date = new SystemDate(); fileContent += ";Generated by AsteriskTools at " + date.getDateTime() + "\n\n"; fileContent += fileModel; out.write(fileContent); out.close(); refreshAsterisk(); } catch (IOException ex) { try { getPermission(file.getAbsolutePath()); saveFile(file); } catch (IOException ex1) { Logger.getLogger(MainWindow.class.getName()).log(Level.SEVERE, null, ex1); } ex.printStackTrace(); } }