第七次Java上机

package io;
import java.util.Scanner;
import java.io.*;
public class BufferedReaderstudy {
	   public static void main(String[] args) {
		   String S;
		   System.out.println("请输入想存入的字符串:");
		   Scanner sc = new Scanner(System.in);
		   S = sc.next();
		   try{
		      FileWriter fw = new FileWriter("c:\\hello\\zz.txt");
		      BufferedWriter bufw = new BufferedWriter(fw);
		      bufw.write(S);
		      bufw.newLine();
//		      bufw.close();
//		      fw.close();
		      bufw.flush();
		   /*不是不关闭就不能写入,而是已经在内存缓冲中写入,但并没有写到文档中,
		    * 所以你看不到 你可以加入调用 flush()方法 刷新该缓冲,那个关闭输出流 和flush()方法一样,
		    * 都可以刷新缓冲,但close可以节省内存,如果总是调用流,但不关闭,导致内存大量占用,程序崩溃*/
          
	           FileReader fr = new FileReader("c:\\hello\\zz.txt");
	           BufferedReader bufr = new BufferedReader(fr);
	           String s;
	           s = bufr.readLine();
	           System.out.println(s);
	      /*对BufferedReader类,该类的readLine()方法能一次从流中读入一行,但对于BufferedWriter类, 
	       * 就没有一次写一行的方法,所以若要向流中一次写一行,可用PrintWriter类将原来的流改造成新的打印流,
	       * PrintWriter类有一个方法println(),能一次输出一行。*/
         
		PrintWriter out = new PrintWriter(bufw);
	      out.println("hello,world");
	      out.close();
	      }catch(IOException e) {
	    	  e.printStackTrace();
	      }
	   }
	 }

posted @ 2019-07-04 15:55  18软工2班苏炎  阅读(112)  评论(0编辑  收藏  举报