这是我从文件中读取的程序,但我正在为文件阅读器的讲座而离开,所以我正在准备它。该程序当前读取一行并从中打印出前 3 个值,但它仅适用于文件中的一行。
import java.util.*;
import java.io.*;
public class ProcessdatdereFile
{
public static void main (String[] args)throws IOException{
List namenum=readM("data/raw.txt");
dataProcess(namenum);
}
public static List readM(String filename)throws IOException{
Scanner fr=new Scanner(new FileReader(filename));
List<String>namenum=new ArrayList<String>();
while(fr.hasNext()){
namenum.add(fr.next());
}
fr.close();
Collections.sort(namenum,Collections.reverseOrder());
return namenum;
}
public static void dataProcess(List namenum)throws IOException{
for(int i=0;i<4;i++){
System.out.printf("%s ",namenum.get(i));
}
System.out.println("");
}
}
raw.txt 包含
Mary 45 87 23 76
Joe 34 76 12 78 34 87
Anne 90 5 99
该程序需要在单独的行上打印每个名称和前 3 个分数。欢迎长篇大论。提前致谢。