else if (args[0].equals("-u")) {
String currID;
String product;
double price;
int quantity;
String[] getParams;
for (int i = 0; i < lines.size(); i++) {
System.out.println(lines.get(i));
getParams = lines.get(i).split(" ");
currID = getParams[0];
System.out.println(id);
System.out.println(currID);
if (id.equals(currID)) { // Почему сравнение не срабатывает при нулевой итерации?
product = args[2];
price = Double.parseDouble(args[3]);
quantity = Integer.parseInt(args[4]);
String upData = String.format(Locale.ROOT,"%-8d%-30s%-8.2f%-8d",Integer.parseInt(id),product,price,quantity); //
lines.set(i,upData);
break;
}
}
package com.javarush.task.task18.task1828;
/*
Прайсы 2
*/
import java.io.*;
import java.util.ArrayList;
import java.util.Locale;
public class Solution {
public static void main(String[] args) throws IOException {
if (!(args.length ==0)) {
String id = (args[1]);
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
String nameFile = reader.readLine();//C:/data1.txt
reader = new BufferedReader(new FileReader(nameFile));
ArrayList<String> lines = new ArrayList<>();
FileWriter writer;
while (reader.ready()) {
lines.add(reader.readLine());
}
reader.close();
if (args[0].equals("-d")) {
writer = new FileWriter(nameFile);
for (int i = 0; i < lines.size(); i++) {
String[] getID = lines.get(i).split(" ");
if (getID[0].equals(id)) {
lines.remove(i);
}
}
for (String s : lines) {
writer.write(s+"\r\n");
}
writer.close();
}
else if (args[0].equals("-u")) {
String currID;
String product;
double price;
int quantity;
String[] getParams;
for (int i = 0; i < lines.size(); i++) {
System.out.println(lines.get(i));
getParams = lines.get(i).split(" ");
currID = getParams[0];
System.out.println(id);
System.out.println(currID);
if (id.equals(currID)) {
product = args[2];
price = Double.parseDouble(args[3]);
quantity = Integer.parseInt(args[4]);
String upData = String.format(Locale.ROOT,"%-8d%-30s%-8.2f%-8d",Integer.parseInt(id),product,price,quantity); //
lines.set(i,upData);
break;
}
}
writer = new FileWriter(nameFile);
for (String s : lines) {
writer.write(s+"\r\n");
}
writer.close();
}
}
else return;
}
}