1.建立联系 file对象

2.选择流:writer FileWriter

3.读取while(字符数组,0,长度)+flush

4.关闭资源

之前文件写出的时候,需要把String字符串转化成byte数组,才可以使用writer方法写出,

但是Writer提供了不同的writer方法,可以直接写出字符串,如下:

纯文本的写出_字符串

代码:

纯文本的写出_字符流_02
public class Demo05 {  
    public static void main(String[] args) {  
          
        /** 
         * 纯文本写出 
         */  
          
        //1.获取File对象  
        File dest=new File("F:/Picture/test/test2.txt");  
          
        //2.选择流  
        Writer writer=null;  
          
        try {  
            //true代码追加文件,false代码覆盖,默认false覆盖  
            writer=new FileWriter(dest,true);  
            String str="我们都是好孩子!";  
              
            //3.写出,强制刷出  
            writer.write(str);  
              
            //可追加  
            writer.append("hahaahaha");  
          
            writer.flush();  
          
        } catch (IOException e) {  
            // TODO Auto-generated catch block  
            e.printStackTrace();  
        }finally{  
            if(writer!=null){  
                try {  
                    writer.close();  
                } catch (IOException e) {  
                    // TODO Auto-generated catch block  
                    e.printStackTrace();  
                }  
            }  
        }  
          
    }  
}  
纯文本的写出_字符流_02

字符流拷贝:

纯文本的写出_字符流_02
public class Demo05 {  
    public static void main(String[] args) {  
          
        /** 
         * 纯文本的拷贝 
         */  
          
        File src=new File("F:/Picture/test/test.txt");  
        File dest=new File("F:/Picture/test/test3.txt");  
          
        Reader re=null;  
        Writer wr=null;  
          
        try {  
            re=new FileReader(src);  
            wr=new FileWriter(dest);  
              
            char[] buffer=new char[1024];  
            int len=0;  
            while(-1!=(len=re.read(buffer))){  
                wr.write(buffer);  
                wr.flush();  
            }  
        } catch (FileNotFoundException e) {  
            // TODO Auto-generated catch block  
            e.printStackTrace();  
        }catch (IOException e) {  
            // TODO Auto-generated catch block  
            e.printStackTrace();  
        } finally {  
              
            try {  
                if (wr != null) {  
  
                    wr.close();  
                }  
                if (re != null) {  
                    re.close();  
                }  
            } catch (IOException e) {  
                // TODO Auto-generated catch block  
                e.printStackTrace();  
            }  
        }  
  
    }  
}  
纯文本的写出_字符流_02