Тестирую локально - все отлично. Сначала решил с BufferdedInputStream и BufferedOutputStream. Локально тоже все отлично тестировалось, но валидатор почти по всем позициям выдает крест. Теперь через BufferReader и BufferWriter... Че только уже не пробовал...
package com.javarush.task.task18.task1827;
/*
Прайсы
*/
import java.io.*;
import java.util.Scanner;
public class Solution {
public static void main(String[] args) throws Exception {
if (args[0].equals("-c")) {
Scanner in = new Scanner(System.in);
String fileName = in.nextLine();
in.close();
BufferedReader bufferedReader = new BufferedReader(new FileReader(new File(fileName)));
String line = "";
int maxID = Integer.MIN_VALUE;
while ((line = bufferedReader.readLine()) != null) {
if (!line.equals("")) {
int tempID = Integer.parseInt(line.split(" ")[0]);
if (tempID > maxID) maxID = tempID;
}
}
bufferedReader.close();
BufferedWriter bufferedWriter = new BufferedWriter(new FileWriter(new File(fileName), true));
bufferedWriter.newLine();
String id = ((maxID + 1) + " ").substring(0, 8);
String productName = (args[1] + " ").substring(0, 30);
String price = (args[2] + " ").substring(0, 8);
String quan = (args[3] + " ").substring(0, 4);
bufferedWriter.write(id + productName + price + quan);
bufferedWriter.close();
}
}
}