package com.javarush.task.task18.task1819; import java.io.*; import java.util.ArrayList; import java.util.List; import java.util.Scanner; /* Объединение файлов */ public class Solution { public static void main(String[] args) throws IOException { BufferedReader reader = new BufferedReader(new InputStreamReader(System.in)); String name1 = reader.readLine(); String name2 = reader.readLine(); FileReader fileReader1 = new FileReader(name1);//поток чтения для первого файла ArrayList<Integer> list1 = new ArrayList<>(); ArrayList<Integer> list2 = new ArrayList<>(); while(fileReader1.ready()) { list2.add(fileReader1.read()); } fileReader1.close(); FileWriter fileWriter = new FileWriter(name1);//поток записи для первого файла FileReader fileReader2 = new FileReader(name2);//поток чтения для второго файла while(fileReader2.ready()) { list1.add(fileReader2.read()); } fileReader2.close(); for (int i=0; i<list2.size(); i++) { list1.add(list2.get(i)); } for (int i=0; i<list1.size(); i++) { fileWriter.write(list1.get(i)); } fileWriter.close(); } } Все хорошо работает, но я не понимаю почему при записи значений списка в первый файл, он оказывается пустым и все проходит. Ведь по сути в нем есть его данные, но их почему-то нет.