黑马程序员技术交流社区
标题:
今天考黑马的测试题
[打印本页]
作者:
wanghanqing
时间:
2016-9-1 22:39
标题:
今天考黑马的测试题
1. 键盘每录入一次数据就将录入的数据在文件中存放成一行
2. 文件中最多存放5行
3.根据数据存放的时间上下排序,最早录入的在最后一行,最后录入的数据在文件的第一行
作者:
a825125501
时间:
2016-9-1 23:25
1:用bufferedwriteStream readLine()
2:可以用一个计数器,计数,每换行一次就+1 ,到5就不存储
3:这个采用倒序遍历,然后写入文件就行了
作者:
18366882177
时间:
2016-9-2 08:14
package cn.test3;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.util.Collections;
import java.util.Map.Entry;
import java.util.Scanner;
import java.util.Set;
import java.util.TreeMap;
/*
* 项目根目录下创建文件data.txt,文件用来存放键盘录入的数据
文件存放数据的格式要求:
1. 键盘每录入一次数据就将录入的数据在文件中存放成一行
2. 文件中最多存放5行???
3.根据数据存放的时间上下排序,最早录入的在最后一行,最后录入的数据在文件的第一行
*/
public class Test3 {
public static void main(String[] args) throws IOException {
// TODO Auto-generated method stub
TreeMap<Integer, String> map=new TreeMap<Integer,String>(Collections.reverseOrder());
int j=0;
File file=new File("data.txt");
if(!file.exists()){
file.createNewFile();
}
BufferedWriter bufferedWriter=new BufferedWriter(new FileWriter(file));
while(true){
j++;
System.out.println("请输入录入信息:");
String string=new Scanner(System.in).nextLine();
map.put(j, string);
System.out.println("是否还要录入?(0否 其他数字是)");
int jh = new Scanner(System.in).nextInt();
if(jh==0){
break;
}
}
int num=0;
Set<Entry<Integer, String>> entrySet = map.entrySet();
for (Entry<Integer, String> entry : entrySet) {
num++;
if (num<6) {
bufferedWriter.write(entry.getValue());
bufferedWriter.newLine();
bufferedWriter.flush();
}else{
break;
}
}
bufferedWriter.close();
}
}
作者:
赢无翳
时间:
2016-9-2 12:18
这个应该可以把键盘录入存进arraylist 然后倒序取出 再用bufferedwriter输出吧
作者:
418777630
时间:
2016-9-8 00:29
讲得太好了 ,顶顶顶!!!
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2