код написал, сделал себе файл и проверил, вроде работает все удаляет/обновляет, но компилятор все равно не принимает, может кто то обьяснить что не так тут?
package com.javarush.task.task18.task1828;
import java.io.*;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
/*
Прайсы 2
*/
public class Solution {
public static void main(String[] args) throws IOException {
Scanner sc = new Scanner(System.in);
String path = sc.nextLine();
ArrayList<String> list = new ArrayList<>();
try(BufferedReader reader = new BufferedReader(new FileReader(path))){
String line;
while ((line = reader.readLine()) != null){
list.add(line);
}
}
if(args.length != 0){
if(args[0].equals("-u")){
StringBuilder builder = new StringBuilder();
int id = Integer.parseInt(args[1]);
for (int i = 0; i < list.size(); i++){
String strings = list.get(i).substring(0,8);
builder.append(strings);
while(builder.charAt(builder.length()-1) == ' ' || builder.charAt(builder.length()-1) == '\u00A0' ){
builder.deleteCharAt(builder.length()-1);
}
strings = builder.toString();
builder = new StringBuilder();
if(Integer.parseInt(strings) == id){
String stringId;
String stringName;
String stringPrice;
String stringQuantity;
if(args[1].length() > 8){
stringId = args[1].substring(0,8);
}else {
stringId = String.format("%-8s",args[1]);
}
if(args[2].length() > 30){
stringName = args[2].substring(0,30);
}else {
stringName = String.format("%-30s",args[2]);
}
if(args[3].length() > 8){
stringPrice = args[3].substring(0,8);
}else {
stringPrice = String.format("%-8s",args[3]);
}
if(args[4].length() > 4){
stringQuantity = args[4].substring(0,4);
}else {
stringQuantity = String.format("%-4s",args[4]);
}
builder.append(stringId);
builder.append(stringName);
builder.append(stringPrice);
builder.append(stringQuantity);
list.set(i, builder.toString());
Files.write(Paths.get(path),list);
break;
}
}
}else if(args[0].equals("-d")){
StringBuilder builder = new StringBuilder();
int id = Integer.parseInt(args[1]);
for (int i = 0; i < list.size(); i++) {
String strings = list.get(i).substring(0,8);
builder.append(strings);
while(builder.charAt(builder.length()-1) == ' ' || builder.charAt(builder.length()-1) == '\u00A0' ){
builder.deleteCharAt(builder.length()-1);
}
strings = builder.toString();
builder = new StringBuilder();
if(Integer.parseInt(strings) == id){
list.remove(i);
Files.write(Paths.get(path),list);
break;
}
}
}
}
}
}