Не могу понять где ошибка. Программа работает правильно.
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 IOException {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
String fileName = reader.readLine();
reader.close();
BufferedReader bufferedReader = new BufferedReader(new FileReader(new File(fileName)));
StringBuffer stringBuffer = new StringBuffer();
if (args.length != 0) {
if (args.length == 5 && args[0].equals("-u")) {
String line;
while ((line = bufferedReader.readLine()) != null) {
if (line.substring(0, 8).trim().equals(args[1])) {
if (args[2].length() > 30)
args[2] = args[2].substring(0,30);
line = String.format("%-8s%-30s%-8s%-4s", args[1], args[2], args[3], args[4]);
}
stringBuffer.append(line);
stringBuffer.append("\n");
}
bufferedReader.close();
FileWriter fileWriter = new FileWriter(fileName, false);
fileWriter.write(stringBuffer.toString());
fileWriter.close();
}
if (args.length == 2 && args[0].equals("-d")) {
String line;
while ((line = bufferedReader.readLine()) != null) {
if (line.substring(0, 8).trim().equals(args[1])) {
line = "";
} else {
line = line + "\n";
}
stringBuffer.append(line);
}
bufferedReader.close();
FileWriter fileWriter = new FileWriter(fileName, false);
fileWriter.write(stringBuffer.toString());
fileWriter.close();
}
}
bufferedReader.close();
}
}