復制文件-用FileOutputStream和FileInputStream讀寫文件


 

//寫文件
   File file=new File("demo1.txt");//抽象一個1.txt的文件,處理文件名或者路徑
   //構造兩個FileOutPutStream的實例對象,先定義一個File類文件的做法比較規范,通用
   FileOutputStream fos1=new FileOutputStream(file,false);//true表示如果文件已經存在,沒執行程序一次便往文件追加一次內容,否則會每一次的執行結果會覆蓋文件上一次執行結果
   BufferedOutputStream bos=new BufferedOutputStream(fos1);//把fos1封裝成具有緩沖功能的文件輸出流
   FileOutputStream fos2=new FileOutputStream("demo2.txt");//用一個String構造一個FileOutputStream對象,String為文件名,這種構造方法也可以有兩個參數,同上
   DataOutputStream dos=new DataOutputStream(fos2);//DataOutputStream提供了寫入任意對象的能力
   String s1="How are you?";
   String s2="Fine.Thanks!";
   dos.writeBytes(s1+"   "+s2);
   fos1.write(s1.getBytes());//把字符串s1以字節流形式寫入1.txt文件中
//   fos2.write(s2.getBytes());//把字符串s2以字節形式流寫入2.txt文件中
   fos1.write(s2.getBytes());

  
  
   //讀出文件內容
   FileInputStream fis=new FileInputStream(file);
   byte[] b=new byte[fis.available()];//創建一個字節數組,數組長度與file中獲得的字節數相等
   while(fis.read(b)!=-1){
    System.out.println(new String(b));//打印出從file文件讀取的內容
   }
  

public static void main(String[] args) {
        
        File file = new File("e:\\12332.txt");
        try {
            FileOutputStream fos = new FileOutputStream(file);
            BufferedOutputStream bos = new BufferedOutputStream(fos);
            DataOutputStream dos = new DataOutputStream(bos);
            
            FileInputStream fis = new FileInputStream(new File("e:\\12223.txt"));
            byte[] b = new byte[1024];
            int c = 0;
            while((c=fis.read(b))!=-1){
                dos.write(b, 0, c);;
            }
            fis.close();
            dos.close();
            bos.close();
            fos.close();
            System.out.println("運行到這");
        } catch (Exception e) {
            e.printStackTrace();
        }
        
        
        
        
        
    }
    

FileInputStream以字節流讀取文件

FileOutputStream以字節流讀取文件


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM