Записать в файл numbers поочерёдно 100 положительных и 100 отрицательных случайных целых чисел, перечислив их через пробел. Затем прочитать этот файл и раскидать прочитанные числа в 2 файла: positive_numbers и negative_numbers, с положительными и отрицательными числами соответственно.
Какая причина незаписи в файл numbers_positive именно положительных чисел?
И как можно аналогично записать отрицательные?
public static void main(String[] args) {
File file = new File("D:/numbers.txt");
try (FileWriter fw = new FileWriter(file, true)) {
for (int i = 0; i <= 100; i++) {
fw.write(" " + getRandomNumber(1, 100));
}
for (int i = 0; i <= 100; i++) {
fw.write(" " + getRandomNumber(-1, -100));
}
} catch (IOException e) {
e.printStackTrace();
}
try (FileReader fr = new FileReader("D:/numbers.txt");
FileWriter fwnp = new FileWriter("D:/numbers_positive.txt");
FileWriter fwnn = new FileWriter("D:/numbers_negative.txt")) {
int c = fr.read();
while (c > 0) {
c = fr.read();
fwnp.write(c);
fwnp.flush();
}
} catch (IOException e) {
e.printStackTrace();
}
}
private static int getRandomNumber(int a, int b) {
if (b < a)
return getRandomNumber(b, a);
return a + (int) ((1 + b - a) * Math.random());
}
}