У меня возникла проблема с созданием массива, который читается в качестве аргумента из командной строки. Первая строка этого файла представляет собой целое число N, а остальная часть этого файла содержит строки в каждой строке. Первое целое число - это размер массива. Я успешно выделил массив, однако я не могу заставить его прочитать всю строку файла input.txt.Как создать массив строк из файла input.txt
Ниже приведен пример файла input.txt:
4
hey, 03982
bye, 30980324
no, 3290823
yes, 30948432
Вот хватка моего кода:
import java.util.Scanner;
import java.io.*;
import java.util.Arrays;
class databaseSearch{
public static void main(String[] args){
Scanner sc = null;
// if no arguments are entered, print out
// error message and correct way to invoke program
if(args.length == 0){
errorMessage();
}
// Try and open the first argument on the command line
try{
sc = new Scanner(new File(args[0]));
}catch(FileNotFoundException e){
System.err.println(e.getMessage());
errorMessage();
}
int arraySize = sc.nextInt();
sc.nextLine();
String[] DB = new String[arraySize];
for(int i = 0; i < arraySize; i++){
DB[i] = sc.nextLine();
}
System.out.println(Arrays.toString(DB));
}
// errorMessage()
// prints out an error message with correct with to invoke program
// terminates after instructions are given
static void errorMessage(){
System.err.println("Please try again by running the program along with a correct file.");
System.exit(1);
}
}
Что такое переменная бизнеса? Этот пример невозможно проверить, попробуйте запустить его в отладчике, чтобы увидеть результат шаг за шагом. И что правильно? – Evers
исправил его, должен был быть DB.length –