Can you check whre is problem? I checked on my file and it works normally.
package pl.codegym.task.task18.task1827;
/*
Ceny
*/
import java.io.*;
import java.util.ArrayList;
public class Solution {
public static String addSpace(String arg, int count) {
String argNew = arg;
if (arg.length() < count) {
for (int i = 0; i < (count - arg.length()); i++) {
argNew = argNew + " ";
}
}
return argNew;
}
public static void main(String[] args) throws Exception {
if (args.length != 0) {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
String fileName = reader.readLine();
//String fileName = "d:/t.txt";
reader.close();
FileReader fileReader = new FileReader(fileName);
BufferedReader bf = new BufferedReader(fileReader);
if (args[0].equals("-c") && args[0].length() == 4) {
String productName = args[1];
String price = args[2];
String quantity = args[3];
/*
String productName = "plecak";
String price = "159.00";
String quantity = "12";
*/
String productNameNew = addSpace(productName, 30);
String priceNew = addSpace(price, 8);
String quantityNew = addSpace(quantity, 4);
String lastLine = null;
String temp;
while ((temp = bf.readLine()) != null) {
lastLine = temp;
}
bf.close();
fileReader.close();
int newID = Integer.parseInt(lastLine.substring(0, 8).replaceAll(" ", "")) + 1;
String newIDstr = Integer.toString(newID);
String idNew = addSpace(newIDstr, 8);
FileWriter fw = new FileWriter(fileName, true);
BufferedWriter bufferedWriter = new BufferedWriter(fw);
bufferedWriter.write("\n" + idNew + productNameNew + priceNew + quantityNew);
bufferedWriter.close();
fw.close();
}
} else {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
String fileName = reader.readLine();
//String fileName = "d:/t.txt";
reader.close();
FileReader fileReader = new FileReader(fileName);
BufferedReader bf = new BufferedReader(fileReader);
FileWriter fw = new FileWriter(fileName);
BufferedWriter bufferedWriter = new BufferedWriter(fw);
while (bf.ready()) {
int data = bf.read();
bufferedWriter.write(data);
}
bf.close();
fileReader.close();
bufferedWriter.close();
fw.close();
}
}
}