我确实试图搜索有关此问题的任何可能的问题,但似乎没有一个对我来说完全正常工作
这里有一些代码我必须读取子目录中的所有文件,该方法采用要查找的文件的名称及其目录
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
答案 0 :(得分:0)
只需使用.nextLine()
即可。它会占用您输入的所有内容。