task1:程序是已经给好的,放到编译器里找出了几处错误就能运行了,运行结果如图:
task2:不知道它这个lab中说的EMAC是什么,只能在eclipese上简单的写了个排序的程序,任务的要求是根据surname排序,不过鉴于surnname是先出现的,简化起见就
没有区分surnname和Given Name,把两个合在一个String里一起排序了。代码如下:
import java.io.*;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Comparator;
import java.util.List;
class StringComparator<String>implements Comparator<String>{
public int compare(String s1, String s2) {
return ((java.lang.String) s1).compareTo((java.lang.String) s2);
}
}//建立比较器
public class RosterSort {
public static void main(String[]args) throws IOException{
File file=new File("C://Users/acer/Desktop/Roster.txt");
BufferedReader reader=new BufferedReader(new FileReader(file));
List<String>b=new ArrayList<String>();
while(reader.ready()){
b.add(reader.readLine());
}
reader.close();//读取Roster.txt
b.sort(new StringComparator());
BufferedWriter writer=new BufferedWriter(new FileWriter(new File("C://Users/acer/Desktop/SortedRoster.txt")));
for(int i=0;i<b.size();i++){
writer.write(b.get(i)+"\r\n");
}
writer.close();//输出排列好的文件 SortedRoster.txt
}
}
运行结果:
原文:http://www.cnblogs.com/lyz1995/p/7143555.html