Java Object数组显示为null

时间:2015-02-21 17:25:38

标签: java arrays object

我需要使用对象数组打开文本文件,并将其显示到控制台输出。 文本文件是一个包含7列的表。 我创建了一个对象数组。目前显示:

" F:\ stock.txt14行 [[null,null,null,null,null,null,null,null,null,null,null,null,null,null] ..... etc。"这应该是每列的信息。

我已经坚持了一段时间,因为我不确定该怎么做。 任何帮助将不胜感激。

public class Stock {

    public Object [][] makeArray() throws IOException {

        int L = 0;
        int currentLine = 0;
        int next = 1;

        File stockFile = new File ("F:\\stock.txt");
        Scanner s = null;
        Scanner input = null;
        System.out.print(stockFile);

        try {
            input = new Scanner(new File("F:\\stock.txt"));
        }
        catch (FileNotFoundException fileNotFoundException) {
            System.err.println("Error opening stock file.");
            System.exit(1);
        }

        try {
            s = new Scanner (stockFile);        //scan file
            while (s.hasNext()){
                L = L+1;                            //read line
                s.nextLine();                       //read next line
            }
        }
        finally {
            if (s != null){                     //if no more line
                s.close();                      //close
            }
        }

        System.out.println("\n" + L + " lines");

        Object[] partID = new Object[L];
        Object[] manufacturer = new Object[L];
        Object[] partNo = new Object[L];
        Object[] description = new Object[L];
        Object[] stockLevel = new Object[L];
        Object[] lowStock = new Object[L];
        Object[] location = new Object[L];
        Object[][] stockArray = new Object [][] {partID, manufacturer, partNo, description, stockLevel, lowStock, location};

        Scanner fillArray = null;

        return stockArray;
    }
}

1 个答案:

答案 0 :(得分:0)

在while循环中需要解析正在读取的行以提取所需的值并将其存储在某处。

while (s.hasNext()){
    // parse out data and store somewhere
}

目前您正在阅读该行,但对从文件中读取的数据不执行任何操作