Java从txt文件中读取某些行

时间:2014-03-20 22:44:42

标签: java file text io

我想从文件中读取第二行文本并将其放入数组中。我已经让它在第一行工作了。

        [ Code removed as requested ]

上面的while循环显示了我如何读取文本文件的第一行并将其保存到数组中。我希望从第二行重复这个过程到另一个数组。

文件内容:

沙发,扶手椅,电脑桌,咖啡桌,电视架,靠垫,床,床垫,羽绒被,枕头 599.99,229.99,129.99,40.00,37.00,08.00,145.00,299.99,24.99,09.99

3 个答案:

答案 0 :(得分:0)

删除第一个readLine()调用,并将String.split()调用移动到循环中。

答案 1 :(得分:0)

只需使用BufferedReader类读取整个文件,然后操作String输出。

沿着这些方向的东西

public static String readFile(String fileName) throws IOException {
    String toReturn = "";
    BufferedReader br = null;

    try {
        String sCurrentLine;
        br = new BufferedReader(new FileReader("test.txt"));
        while ((sCurrentLine = br.readLine()) != null) {
            toReturn = toReturn+"\n"+sCurrentLine;
        }
    } catch (IOException e) {
        e.printStackTrace();
    } finally {
        try {
            if (br != null)br.close();
        } catch (IOException ex) {
            ex.printStackTrace();
        }
    }
    return toReturn;
}

会生成一个可以轻松使用的字符串。

答案 2 :(得分:0)

public static void main(String[] args)
{
    String filePath = args[0];
    String[] lineElements = getLine(filePath,2).split(",");
}

public static String getLine(String path,int line)
{
    List<String> cases = new ArrayList<String>();
    try{
        BufferedReader br = new BufferedReader(new FileReader(path));

        String currLine = "";
        while((currLine = br.readLine()) != null){
            cases.add(currLine);
        }
    }catch(IOException ex){
        ex.printStackTrace();
    }

    return cases.get(line - 1);//2nd line
}