На тесте все работает по заданию.
package com.javarush.task.task18.task1828;
/*
Прайсы 2
*/
import java.io.*;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
public class Solution {
public static void main(String[] args) throws Exception {
if ((args.length > 0) && (args[0].equals("-d")) || (args[0]).equals("-u")) {
String fileName = "";
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
fileName = reader.readLine();
reader.close();
List<String> list = new ArrayList<>();
BufferedReader inputStream = new BufferedReader(new FileReader(fileName));
String line;
while ((line = inputStream.readLine()) != null) {
if (line.length() < 8);
else {
if (args[1].equals(line.substring(0, 8))) {
if (args[0].equals("-u"))
list.add(String.format("%-8.8s%-30.30s%-8.8s%-4.4s", args[1], args[2], args[3], args[4]));
if (args[0].equals("-d")) ;
}
else list.add(line);
//System.out.println(line);
}
}
inputStream.close();
BufferedWriter writer1 = new BufferedWriter(new FileWriter(fileName));
writer1.close();
BufferedWriter writer = new BufferedWriter(new FileWriter(fileName, true));
for (String line1 : list) {
writer.newLine();
writer.write(line1);
}
writer.close();
}
}
}