java把控制台输入的文本追加到文件中

被迫从网上抄的代码,老师布置的作业,喵的。

java把控制台输入的文本追加到文件中

感谢强大的网友。@46y4ww 来自360问答!

1.实验目的

本实验的目的是让学生掌握字符输入、输出流以及缓冲输入、输出流用法。
2.实验要求 从控制台接收如下格式的成绩
姓名:张三,数学72分,物理67分,英语70分.
姓名:李四,数学92分,物理98分,英语88分.
姓名:周五,数学68分,物理80分,英语77分.
并把它们存入到一个文本文件 (文件名自定义)中。
再按行读取成绩单,且在该行的后面加上该同学的平均成绩,并以尾加方式将该行写入到另一个文本文件(文件名自定义)中。
3.实验参考
教材P201-202 上机实践练习
/**
	 * 从控制台接收用户输入的数据,并存储在磁盘上
	 * @param filePath
	 */
	static void userPrint(String filePath){
		BufferedReader br = null;
		BufferedWriter bw = null;
		try{
			//通过System.in返回一个InputStream对象用于构造一个InputStreamReader对象
			//再用来构造一个Buffered对象
			br = new BufferedReader(new InputStreamReader(System.in));
			bw = new BufferedWriter(new FileWriter(filePath,true));   //true表示是否追加
			String str = br.readLine();	//接收用户输入
			while(!str.equals("exit")){	//如果用户输入exit则退出循环
				bw.write(str);			//将用户输入的字符串写入文件
				bw.newLine();			//换行
				bw.flush();		//刷新缓冲区,将缓冲区的字符写入磁盘!
				str = br.readLine();	//继续接收输入
			}
		}
		catch(FileNotFoundException e){
			System.out.println(e.getMessage());
		}
		catch(IOException e){
			System.out.println(e.getMessage());
		}
		finally{
			try {
				bw.close();		//关闭对象前会调用bw.flush();
				br.close();
			} catch (IOException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
		}
	}

发表评论

路人甲 表情
看不清楚?点图切换 Ctrl+Enter快速提交

网友评论(0)

sitemap