基本上我的程序将数据列入输出文件,然后我必须能够将该输出文件作为输入读取,以列出最近的五个数据。 这是我的代码:
case 2: options = "";
System.out.println("You have chosen to 'List recent data'"
+ "The five most recent data is: " + "\n");
String data1;
Scanner inFile2 = new Scanner (new FileReader ("Bankbalance.txt"));
for (int b=0; b<5; b++) {
data1 = inFile2.nextLine();
System.out.println(data1);
}
break;
基本上输出是给出前五个数据,(我确实知道这是因为我要求它计算前五个)但我只是想知道它是否有可能显示最新的数据? (来自文本文件底部而不是顶部的数据)
答案 0 :(得分:0)
使用RandomAccessFile
课程。见http://docs.oracle.com/javase/7/docs/api/java/io/RandomAccessFile.html
答案 1 :(得分:0)
请参阅this answer进行一些调整,尝试:
Scanner in = new Scanner (new InputStreamReader (new ReverseLineInputStream(file)));
for (int b=0; b<5; b++) {
String line = in.nextLine();
if (line == null) {
break;
}
System.out.println(line);
}