java读取文本文件并将整行分配给字符串

时间:2017-04-17 00:57:55

标签: java file

我确实试图搜索有关此问题的任何可能的问题,但似乎没有一个对我来说完全正常工作

这里有一些代码我必须读取子目录中的所有文件,该方法采用要查找的文件的名称及其目录

 public static Account FileRead(String fname, String dir) throws blankException {
    File file = new File(dir + fname);
    try {

        Scanner sc = new Scanner(file);

        while (sc.hasNextLine()) {

            String type = sc.nextLine();

            if (type.equals("S") || type.equals("C")) {
                String pin = sc.nextLine();
                double balance = sc.nextDouble();
                String name = sc.next();
                String address = sc.next();
                String date = sc.next();

                if (type.equals("S")) {

                    return new SavingAccount(pin, balance, name, address, date);
                }
                if (type.equals("C")) {

                    return new CheckingAccount(pin, balance, name, address, date);
                }
                throw new blankException("no account type given");
            }
        }
        sc.close();
    } catch (FileNotFoundException e) {
        e.printStackTrace();
    }
    return null;
}//end file reader

我的问题是,对于地址,扫描仪只取第一个“字”,如果文件中的地址是“1234 house drive”,地址只有1234.how我可以拥有它的地址是“1234 house驱动器“

另外,所有文件都采用这种格式

type
pin
balance
name
address
date

1 个答案:

答案 0 :(得分:0)

只需使用.nextLine()即可。它会占用您输入的所有内容。