I have a block to write data(string) using BufferedWriter, but compiler keeps saying error: unreported exception IOException; must be caught or declared to be thrown this.dataContainer.stream().forEach( line -> writer.write(line) );
The BufferWriteBufferWriter.write() is already inside a try-catch block. Is the error caused by it nested inside if-else? How shall it be written?
void saveData() throws IOException { String filename; Path filePath; BufferedWriter writer; filename = "missionImpossible9.csv"; filePath = this.dirPath.resolve(filename); //make path of this file writer = Files.newBufferedWriter(filePath); try { if (condition1) { this.dataContainer1.stream().forEach( line -> writer.write(line) ); } else { this.dataContainer2.stream().forEach( line -> writer.write(line) ); } writer.close(); } catch (IOException err){ err.getStackTrace();} }