18 левел 11 лекция Прайсы2 - Плиз подскажите, почему не проходит по циклу в условии if(args[0].equals("-u")) и в этом цикле не находит равенство между if(idProductStr.equals(key)) ? Уже как неделя, с этой задачей е*усь(((
package com.javarush.task.task18.task1828;/*Прайсы 2*/import java.io.*;import java.util.*;
public class Solution {
    public static void main(String[] args) throws Exception {
        args = new String[] {"-u", "1932", "ЛетниеВаленкиСКондиционером", "121", "12"};
        HashMap<String, String> map = new HashMap<>();
        String name = "C:\\JavaRushTasks\\product.txt";
        if (args.length != 0) {
            FileInputStream inName = new FileInputStream(name);
            BufferedReader br = new BufferedReader(new InputStreamReader(inName, "UTF-8"));
            StringBuilder stringBuilder = new StringBuilder();int i;
            while ((i = br.read()) != -1) {
                char ch = (char) i;
                stringBuilder.append(ch);
            }
            inName.close();
            System.out.println("stringBuilder:   ");System.out.println(stringBuilder);
            ArrayList<String> idStringList = new ArrayList<>(Collections.singletonList(stringBuilder.toString()));
            String idProductStr = idProduct(args[1]); // 8 символов   -  1932
            String nameProduct = nameProduct(args[2]); // 30 символов
            String price = priceProduct(args[3]); // 8 символов
            String quantity = quantityProduct(args[4]); // 4 символа
            String newStr =
                            nameProduct +
                            price +
                            quantity;
            for (String s : idStringList) {
                System.out.println("s в цикле:   ");System.out.println(s);
                String idNum = s.substring(0, 8);//удаляем все, кроме первых 8 элементов - id
                String ValueNum = s.substring(8);//удаляем первые 8 элементов - оставляем остальное
                map.put(idNum, ValueNum);//добавляем все id`ы в key, остальное все в value
            }
            System.out.print("map:    "); System.out.println(map);
            if(args[0].equals("-u")) {
                for(HashMap.Entry<String, String> entry: map.entrySet()) {
                    String key = entry.getKey();
                    String value = entry.getValue();
                    System.out.println("до if:   ");System.out.println(key + value);
                    System.out.println("до if:   ");System.out.println(key + idProductStr);
                    if(idProductStr.equals(key)) {
                        System.out.println("в if:    ");System.out.println(key + idProductStr);
                        map.put(idProductStr, newStr);
                        System.out.print("key + value:    "); System.out.println(key + value);
                    }
                    System.out.println("map:    "); System.out.println(map);
                }
            }
            if(args[0].equals("-d")) {
                //deleteStringToFile(map, name);
            }
        }
        //reader.close();

    }

    public static String idProduct(String idProduct) {//обрабатываем args id
        idProduct = String.format("%-8s", idProduct);
        return idProduct;
    }
    public static String nameProduct(String nameProduct) { // обрабатываем args имя
        nameProduct = String.format("%-30s", nameProduct);
        return nameProduct;
    }
    public static String priceProduct(String price) { // обрабатываем args цену
        price = String.format("%-8s", price);
        return price;
    }
    public  static String quantityProduct(String quantity) { // обрабатываем args количество
        quantity = String.format("%-4s", quantity);
        return quantity;
    }
    public static void stringReplacement(HashMap<String,String> map, String name) {
        try {
            StringBuilder writeBuilder = new StringBuilder();
            FileOutputStream fos = new FileOutputStream(name);
            BufferedOutputStream bos = new BufferedOutputStream(fos);
            for(HashMap.Entry<String, String> entry: map.entrySet()) {
                String key = entry.getKey();
                String value = entry.getValue();
                writeBuilder.append(key).append(value).append("\n");
                //System.out.println(writeStrBl);
                //System.out.println("");System.out.println("idProduct - " + entry.getKey() + "newStr - " + entry.getValue());
            }
            bos.write(writeBuilder.toString().getBytes());
            System.out.println("writeBuilder:    ");System.out.println(writeBuilder);
            bos.close();
        } catch (IOException e) {}
    }
    public static void deleteStringToFile(HashMap<String,String> hashMap, String name) {
        try {
            StringBuilder writeStrBl = new StringBuilder();
            FileOutputStream fos = new FileOutputStream(name);
            BufferedOutputStream bos = new BufferedOutputStream(fos);
            for(HashMap.Entry<String, String> entry: hashMap.entrySet()) {
                String key = entry.getKey();
                String value = entry.getValue();
                writeStrBl.append(key).append(value);
                System.out.println(writeStrBl);
                System.out.println(entry.getKey() + entry.getValue());
            }
            bos.write("".getBytes());
            bos.write(writeStrBl.toString().getBytes());
            //System.out.println(writeStrBl);
            bos.close();
        } catch (IOException e) {}
    }
}