Вот подсказка, с которой мне было дано работать (я получил ожидаемый результат, заменив строку «File input = new File(args[0]);
» на «File input = new File("data.txt");
», но мне было интересно, можно ли это сделать каким-то образом с помощью командной строки): Следующая программа имеет объект String array-list. Вычислите общее значение из входного файла, после чего распечатайте общее значение в новый файл.Использование PrinterWriter с String ArrayList
import java.io.File;
import java.io.PrintWriter;
import java.io.FileNotFoundException;
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
class FileIOArrayList {
public static void main(String[] args) throws FileNotFoundException
{
List<Integer> data = new ArrayList<Integer>();
File input = new File(args[0]);
Scanner myScanner = new Scanner(input);
while (myScanner.hasNextInt()){
data.add(myScanner.nextInt());
}
PrintWriter myWriter = new PrintWriter("output.txt");
for(int i=0; i<data.size(); i++)
{
myWriter.println(data.get(i));
}
myWriter.close();
}
}
==== Выход Пример =======
32
54
76
90
10
300
543
179
4
2
5
Total sum = 1295
Просьба уточнить утверждение «может быть сделано каким-то образом с помощью командной строки» – KING
Мой учитель использовал строки, такие как: java FileIOArrayList 1. но это приводит к ошибке за пределами массива, есть ли способ вызвать файл data.txt из терминала? – Cbrower92