Валидатор все время выбивает "Exception in thread "main" java.lang.StringIndexOutOfBoundsException: String index out of range: 8"
ПОЧЕМУ???
package com.javarush.task.task18.task1828;
/*
Прайсы 2
*/
import java.io.*;
import java.util.ArrayList;
import java.util.List;
public class Solution {
public static void main(String[] args) throws Exception{
String file = "D:\\\\123.txt";
List<String> list = new ArrayList<>();
if(args.length==0){
return;
}
else if(args[0].equals("-u")) {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
BufferedReader readerFile = new BufferedReader(new FileReader(file));
BufferedWriter writer = new BufferedWriter(new FileWriter(file, true));
int Id = Integer.parseInt(args[1].trim());
while (readerFile.ready()) {
String str = readerFile.readLine();
list.add(str);
}
readerFile.close();
reader.close();
String productName = args[2];
if (args[2].length() > 30){
productName = args[2].substring(0,30);
}
String posle = (String.format(System.lineSeparator()+"%-8d%-30s%-8.2f%-4d", Id,productName, Float.parseFloat(args[3]), Integer.parseInt(args[4])));
for (int i = 0; i < list.size();i++){
String x = list.get(i).substring(0, 8).trim();
if(Integer.parseInt(x) == Integer.parseInt(args[1]))
list.set(i,posle);
}
for (String i : list) {
//writer.write(i);
System.out.println(i);
}
}
}
}