Próbowałem utworzyć FileOutputStream2 (w konstruktorze nazwa drugiego pliku i boolean true).
Następnie zmienną FileinputStream2 próbowałem przepisać do FileOutputStream1(w konstruktorze nazwa pierwszego pliku i boolean false).
Wynik był co najmniej nieoczekiwany, tylko pierwszy punkt został spełniony reszta wyskakiwała na czerwono.
package pl.codegym.task.task18.task1819;
import java.io.*;
/*
Łączenie plików
*/
public class Solution {
public static void main(String[] args) throws IOException, FileNotFoundException {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
String fileName1 = reader.readLine();
String fileName2 = reader.readLine();
reader.close();
FileInputStream inputStream1 = new FileInputStream(fileName1);
FileOutputStream outputStream1 = new FileOutputStream(fileName1, false);
FileInputStream inputStream2 = new FileInputStream(fileName2);
while(inputStream1.available() > 0) {
int x = inputStream1.read();
System.out.print(x);
}
while(inputStream2.available() > 0) {
int z = inputStream2.read();
outputStream1.write(z);
}
outputStream1.close();
inputStream2.close();
FileOutputStream outputStream2 = new FileOutputStream(fileName1, true);
while(inputStream1.available() > 0) {
int i = inputStream1.read();
outputStream2.write(i);
}
inputStream1.close();
outputStream2.close();
}
}