IOストリーム-入出力ストリーム:バイトストリーム、文字ストリーム、バッファストリーム、変換ストリーム



バイト入出力ストリーム:

  
  
  
  
  1. FileInputStream fis = new FileInputStream(filePath); 
  2. FileOutputStream fos = new FileOutputStream(savePath); 
  3.  
  4. byte[] buffer = new byte[1024]; 
  5. int length = 0
  6. while (-1 != (length = fis.read(buffer))) 
  7. fos.write(buffer); 
  8. /** 
  9.   *  : 
  10.   * String str = new String(buffer, 0, length); 
  11.   * fos.write(str.getBytes()); 
  12.   */ 

 
文字入出力ストリーム:

  
  
  
  
  1. FileReader fr = new FileReader(fileName);  
  2. char[] buffer = new char[1024];//   
  3. int length = 0;  
  4. while (-1 != (length = fr.read(buffer)))  
  5. {  
  6.     for (int i = 0; i < length; i++)  
  7.     {  
  8.         System.out.print(buffer[i]);  
  9.     }  
  10. }  
  11.  
  12.  
  13. FileWriter fw = new FileWriter(fileName); 
  14. fw.write(" good"); 
  15. fw.flush();//  

 
変換フロー、バッファフロー:

  
  
  
  
  1. FileInputStream fis = new FileInputStream(fileName); 
  2. InputStreamReader isr = new InputStreamReader(fis); 
  3. BufferedReader br = new BufferedReader(isr); 
  4.  
  5. FileOutputStream fos = new FileOutputStream(saveName); 
  6. OutputStreamWriter osw = new OutputStreamWriter(fos); 
  7. BufferedWriter bw = new BufferedWriter(osw); 
  8.  
  9.  
  10. String str = null
  11. while (null != (str = br.readLine()))// '\r' '\t'  
  12.     bw.write(str);//write  
  13.     bw.newLine();//  
  14.     bw.flush();//  

ファイルコピー方法:バイトフロー、文字フロー、バッファフロー、変換フローの練習

  
  
  
  
  1. public class CopyMethod 
  2.     public static void main(String[] args) 
  3.     { 
  4.         CopyMethod cm = new CopyMethod(); 
  5.         String scr = "F:/java/tt.txt"
  6.         String dest = "F:/java/xx.txt"
  7.         cm.copyMethod(scr, dest); 
  8.     } 
  9.      
  10.     public void copyMethod(String scr,String dest) 
  11.     { 
  12.         BufferedReader fr = null
  13.         BufferedWriter bw = null
  14.         try 
  15.         { 
  16.             FileInputStream fis = new FileInputStream(scr);//  
  17.             InputStreamReader isr = new InputStreamReader(fis);// ,  
  18.             fr = new BufferedReader(isr);// ,  
  19.              
  20.             FileOutputStream fos = new FileOutputStream(dest); 
  21.             OutputStreamWriter osw = new OutputStreamWriter(fos); 
  22.             bw = new BufferedWriter(osw); 
  23.              
  24.             String str = null;//  
  25.             while(null != (str = fr.readLine()))// readLine(), \r
     
  26.             { 
  27.                 bw.write(str);//  
  28.                 bw.newLine();//  
  29.                 bw.flush();// , writer flush 
  30.             } 
  31.         } 
  32.         catch (FileNotFoundException e) 
  33.         { 
  34.             e.printStackTrace(); 
  35.         } 
  36.         catch (IOException e) 
  37.         { 
  38.             e.printStackTrace(); 
  39.         } 
  40.         finally//  
  41.         { 
  42.             if(fr != null
  43.             { 
  44.                 try 
  45.                 { 
  46.                     fr.close(); 
  47.                 } 
  48.                 catch (IOException e) 
  49.                 { 
  50.                     e.printStackTrace(); 
  51.                 } 
  52.             } 
  53.             if(null != bw) 
  54.             { 
  55.                 try 
  56.                 { 
  57.                     bw.close(); 
  58.                 } 
  59.                 catch (IOException e) 
  60.                 { 
  61.                     e.printStackTrace(); 
  62.                 } 
  63.             } 
  64.         } 
  65.     } 

 
 
本文は“空は痕跡がありませんが私は飛んだことがあります”のブログから出て、転載して作者と連絡してください!