Пожалуйста, подскажите в чем ошибка.
Спасибо!
package com.javarush.task.task18.task1828;
import java.io.*;
import java.util.ArrayList;
import java.util.List;
/*
Прайсы 2
*/
public class Solution {
public static void main(String[] args) throws Exception {
if(args.length == 0){
return;
}
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
String fileName = reader.readLine();
reader.close();
BufferedReader bufferedReader = new BufferedReader(new FileReader(fileName));
BufferedWriter bufferedWriter = new BufferedWriter(new FileWriter(fileName));
if (args[0].equals("-u") && args[1] != null && args[2] != null && args[3] != null && args[4] != null) {
List<String> list = transfer(bufferedReader);
String lineNew = String.format("%-8.8s%-30.30s%-8.8s%-4.4s", args[1], args[2], args[3], args[4]);
for (String line : list) {
String id = line.substring(0, 8).trim();
if (id.equals(args[1])) {
int index = line.indexOf(line);
list.set(index, lineNew);
}
}
recorder(list, bufferedWriter);
} else if (args[0].equals("-d") && args[1] != null) {
List<String> list = transfer(bufferedReader);
for (String line : list) {
String id = line.substring(0, 8).trim();
if (id.equals(args[1])) {
int index = line.indexOf(line);
list.remove(index);
}
}
recorder(list, bufferedWriter);
}
bufferedReader.close();
bufferedWriter.close();
}
public static List<String> transfer(BufferedReader bufferedReader) throws IOException {
List<String> list = new ArrayList<>();
while (bufferedReader.ready()){
list.add(bufferedReader.readLine());
}
return list;
}
public static void recorder(List<String> arrayList, BufferedWriter bufferedWriter) throws IOException {
for (String line : arrayList){
bufferedWriter.write(line + "\n");
}
}
}