将项目从txt文件追加到数组

时间:2018-08-09 21:44:05

标签: java arrays netbeans

嘿,我刚刚开始学习如何编码。我正在使用netbeans,我想将一些数据从txt.file传输到Java中的数组中。这可能是一个非常简单的修复程序,但我看不出有什么问题

这是txt.file中的数据:

58_hello_sad_happy
685_dhejdho_sahdfihsf_hasfi
544654_fhokdf_dasfjisod_fhdihds

这是我正在使用的代码,但是smthg在最后一行代码中是错误的:

int points = 0;
String name = "";
String a = "";
String b = "";

public void ReadFiles() throws FileNotFoundException{
    try (Scanner input = new Scanner(new File("questions.txt"))) {
        String data;
        while(input.hasNextLine()){
            data = input.nextLine();
            String[] Questions = data.split("_");
            points = Integer.parseInt(Questions[0]);
            name= Questions[1];
            a = Questions[2];
            b = Questions[3];
        }   
        System.out.println(Arrays.toString(Questions));
    }
}

这是我得到的错误:

 error: cannot find symbol 
 System.out.println(Arrays.toString(Questions));

谢谢大家。

1 个答案:

答案 0 :(得分:0)

如果您只想打印数据,也可以使用以下代码:

    Files.readAllLines(Paths.get("questions.txt")).forEach(line -> {
        System.out.println(Arrays.toString(line.split("_")));
    });

输出为:

[58, hello, sad, happy]
[685, dhejdho, sahdfihsf, hasfi]
[544654, fhokdf, dasfjisod, fhdihds]

正确的代码版本应如下所示(您必须通过将println移至while循环的末尾来访问声明范围内的变量Question):

// definitions...

public void ReadFiles() throws FileNotFoundException{
    try (Scanner input = new Scanner(new File("questions.txt"))) {
        String data;
        while(input.hasNextLine()){
            data = input.nextLine();
            String[] Questions = data.split("_");
            points = Integer.parseInt(Questions[0]);
            name= Questions[1];
            a = Questions[2];
            b = Questions[3];
            System.out.println(Arrays.toString(Questions));
        }   
    }
}