Всем привет. Всё работает отлично. В чём проблема?
package com.javarush.task.task18.task1827;

/*
Прайсы
*/

import java.io.*;
import java.util.*;

public class Solution {
    public static void main(String[] args) throws Exception {
        BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(System.in));
        //String fileName = "D:\\projects\\java\\JavaRushTasks\\2.JavaCore\\src\\com\\javarush\\task\\task18\\task1827\\123.txt";
        String fileName = bufferedReader.readLine();

        List<Integer> ids = new ArrayList<>();

        if(args.length > 0) {

            String command = args[0];
            String addProductName = args[1];
            String addPrice = args[2];
            String addQuantity = args[3];

            if (command.equals("-c")) {
                if (addProductName.length() > 30) {
                    addProductName = addProductName.substring(0, 30);
                } else {
                    int count = 30 - addProductName.length();
                    for (int i = 0; i < count; i++) {
                        addProductName += " ";
                    }
                }

                if (addPrice.length() > 8) {
                    addPrice = addPrice.substring(0, 8);
                } else {
                    int count = 8 - addPrice.length();
                    for (int i = 0; i < count; i++) {
                        addPrice += " ";
                    }
                }

                if (addQuantity.getBytes().length > 4) {
                    addQuantity = addQuantity.substring(0, 4);
                }
                /*
                else {
                    int count = 4 - addQuantity.length();
                    for (int i = 0; i < count; i++) {
                        addQuantity += " ";
                    }

                 */

                bufferedReader = new BufferedReader(new FileReader(new File(fileName)));
                while (true) {
                    String buf = bufferedReader.readLine();
                    if (buf == null) break;

                    String id = buf.substring(0, 8);
                    if (id.contains(" ")) ids.add(Integer.parseInt(id.substring(0, id.indexOf(" "))));
                    else ids.add(Integer.parseInt((String) id.subSequence(0, 8)));
                }
                bufferedReader.close();

                Collections.sort(ids);
                int lastId = ids.get(ids.size() - 1) + 1;

                BufferedWriter bufferWriter = new BufferedWriter(new FileWriter(fileName, true));
                bufferWriter.write(  "\n" + Integer.toString(lastId) + addProductName + addPrice + addQuantity);
                bufferWriter.close();
            }
        }
    }
}