将无序项放入文件的数组中

时间:2016-04-13 19:22:49

标签: java arrays csv

我有三个CSV文件,其中的数据由一串数字链接,我创建了一个二维数组来存储所有数据并拥有一个csv文件,其他文件中的数据不是以相同的顺序,所以我不能简单地将文件的第1行读入数组的第一行。

这是我的代码

public class grades {
public static void main(String[] args) throws FileNotFoundException 
{
    int rowc = 0;
    String inputLine = "";

    String[][] students = new String[10][6];
    //Get scanner instance
    Scanner scanner = new Scanner(new File("/IRStudents.csv"));

    //Set the delimiter used in file
    scanner.useDelimiter(",");

    while (scanner.hasNextLine()) {
        inputLine = scanner.nextLine();
        String [] line = inputLine.split(",");

        for (int x = 0; x < 2; x++) {
            students[rowc][x] = line[x];
        }
        if (rowc < 9) {
            rowc++;
        }
        else {
            break;
        }
    }
    System.out.println(Arrays.deepToString(students));
    scanner.close();
    Scanner input = new Scanner(new File("/IR101.csv"));
    input.useDelimiter(",");
    while (input.hasNext()) {
        inputLine = input.nextLine();
        String[] line = inputLine.split(",");
        for (int i = 0; i < 1; i++) {
            System.out.println(line[0]);
            System.out.println(students[0][i]);
            if (line[0].equals(students[0][i])) {
                students[2][i] = line[0];
            }
        }
    }
    System.out.println(Arrays.deepToString(students));

}
}

我知道很多它不是很整洁或有效,但我觉得它很有效。无论如何,我如何遍历文件并将每个项目添加到数组的第3列,其中相应的字符串链接它们?

感谢。

1 个答案:

答案 0 :(得分:0)

我希望我能正确理解你的问题。

在你的情况下,你可以将第三个csv加载到内存中然后循环遍历数组( 在另一个中为)并检查一个数组的键匹配另一个键(链接它们的字符串)并绑定它们。

提示:您可以像这样初始化学生属性:

students[rowc] = line;