从文本文件加载后空白

时间:2013-09-19 22:25:00

标签: java

我正在尝试从文本文件输出有关电视节目的信息,如下所示:

2
PPL
Tuesday
1900
BBT
Thursday
2100

我读取和输出文件的方法如下所示:

//method to read shows from file
public static void loadFile() throws FileNotFoundException, IOException{
    int i;
    int x = 0;
    BufferedReader input = new BufferedReader(new FileReader("TV.txt"));
    x = Integer.valueOf(input.readLine()).intValue();
    System.out.println(x + " shows!");

    for(i = 0; i < show.size(); i++){
        ((showInfo)show.get(i)).name = input.readLine();
        ((showInfo)show.get(i)).day = input.readLine();
        ((showInfo)show.get(i)).time = Integer.valueOf(input.readLine()).intValue();
    }

    System.out.println("Show Information");
    for(i = 0; i < show.size(); i++){
        System.out.println("Name: " + ((showInfo)show.get(i)).name);
        System.out.println("Day: " + ((showInfo)show.get(i)).day);
        System.out.println("Time: " + ((showInfo)show.get(i)).time);
    }    
}  

它显示了节目的数量和“显示信息”,但它显示为空白并返回主菜单。它为什么这样做?哦,请不要问我为什么使用铸造而不是仿制药。我不能因为我必须使用1.4。我的老师就是这么想的。

任何帮助都会很棒!提前致谢。 :)

1 个答案:

答案 0 :(得分:2)

我认为show是某种Collection类型。

我最好的猜测是,在您调用此函数之前,show实际上还没有任何内容(即show.size()为0)。

由于x是节目的数量,您应该像for (int i = 0; i < x; i++)一样循环,并使用您的数据创建showInfo的新实例,并将其插入show在你的循环中。