Где ошибка?
package com.javarush.task.task18.task1827;
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.InputStreamReader;
import java.util.ArrayList;
/*
Прайсы
*/
public class Solution {
public static void main(String[] args) throws Exception {
try {
if (args[0].equals("-c")) {
try (BufferedReader reader = new BufferedReader(new InputStreamReader(System.in))) {
String fileName = reader.readLine();
FileReader fileReader = new FileReader(fileName);
FileWriter fileWriter = new FileWriter(fileName, true);
char[] byteArr = new char[9999];
ArrayList<String> strings = new ArrayList<>();
strings.add(0, "0");
//считываем весь файл, записываем в byteArr
while (true) {
if (fileReader.read(byteArr) < 0) break;
}
//находим максимальный id из файла
int countStringsArr = 0;
StringBuilder s = new StringBuilder();
try {
if (byteArr[0] == 0){ //если файл пустой
strings.add(0, String.valueOf(1));
} else {
fileWriter.append('\r');
for (int i = 0; i < byteArr.length - 1; i++) {
s.append(byteArr[i]);
countStringsArr++;
if (countStringsArr == 8) {
int i1 = Integer.parseInt(s.toString().trim());
if (i1 >= Integer.parseInt(strings.get(0).trim())) {
strings.clear();
int j = i1 + 1;
strings.add(0, String.valueOf(j));
}
i += 43;
countStringsArr = 0;
s = new StringBuilder();
}
}
}
} catch (NumberFormatException e) {
fileReader.close();
}
//создаем массив для id
char[] charsId = new char[8];
char[] chars = strings.get(0).toCharArray();
System.arraycopy(chars, 0, charsId, 0, chars.length);
//создаем массив для charsProductName
char[] charsProductName = new char[30];
for (int i = 0; i < charsProductName.length; i++) {
charsProductName[i] = args[1].charAt(i);
}
//создаем массив для charsPrice
char[] charsPrice = new char[8];
for (int i = 0; i < charsPrice.length; i++) {
charsPrice[i] = args[2].charAt(i);
}
//создаем массив для charsQuantity
char[] charsQuantity = new char[4];
for (int i = 0; i < charsQuantity.length; i++) {
charsQuantity[i] = args[3].charAt(i);
}
// записываем все массивы в файл
fileWriter.write(charsId, 0, charsId.length);
fileWriter.write(charsProductName, 0, charsProductName.length);
fileWriter.write(charsPrice, 0, charsPrice.length);
fileWriter.write(charsQuantity, 0, charsQuantity.length);
fileReader.close();
fileWriter.close();
}
}
} catch (ArrayIndexOutOfBoundsException ignored){
}
}
}
//C:/Users/shiro/Desktop/test1.txt