1. 程式人生 > >147_IO_節點流_位元組流_檔案讀取_寫出_追加檔案

147_IO_節點流_位元組流_檔案讀取_寫出_追加檔案

檔案的讀取

  • Test01_InputStream.java
package _02.io.byteStream;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStream;

/**
 * 檔案的讀取
 * 1.建立聯絡-> File物件(源頭)
 * 2.選擇流-> 檔案輸入流  InputStream FileInputStream
 * 3.操作  : byte[] car =new byte[1024];  + read + 讀取大小
             輸出
 * 4.釋放資源 :關閉
 */
public class Test01_InputStream { public static void main(String[] args) { //1.建立聯絡 File物件 File src =new File("E:/IOTest/a.txt"); //2.選擇流 InputStream is =null; //提升作用域 try { is =new FileInputStream(src); //3.操作 不斷讀取緩衝陣列 byte[] flush =new
byte[1024]; int len =0; //接收實際讀取大小 //迴圈讀取 StringBuilder sb =new StringBuilder(); while(-1!=(len=is.read(flush))){ //輸出 位元組陣列轉成字串 String info =new String(flush,0,len); sb.append(info); } System.out.println(sb.toString()); } catch
(FileNotFoundException e) { e.printStackTrace(); System.out.println("檔案不存在"); } catch (IOException e) { e.printStackTrace(); System.out.println("讀取檔案失敗"); }finally{ try { //4.釋放資源 if (null != is) { is.close(); } } catch (Exception e2) { System.out.println("關閉檔案輸入流失敗"); } } } }

寫出檔案

  • Test02_OutputStream.java
package _02.io.byteStream;

import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStream;

/**
 * 寫出檔案
 * 1.建立聯絡->File物件(目的地)
 * 2.選擇流->檔案輸出流  OutputStream FileOutputStream
 * 3.操作  :  write() +flush
 * 4.釋放資源 :關閉
 *
 */
public class Test02_OutputStream {
    public static void main(String[] args) {
        //1.建立聯絡->File物件(目的地)
        File dest =new File("E:/IOTest/b.txt");
        //2.選擇流->檔案輸出流  OutputStream FileOutputStream
        OutputStream os =null;
        try {
            os =new FileOutputStream(dest,true);//append為true以追加形式寫出檔案,否則為覆蓋
            //3.操作  :  write() +flush
            String str="zhushen is very kind men\r\n";
            //字串轉位元組陣列
            byte[] data =str.getBytes();
            os.write(data,0,data.length);
            os.flush(); //強制刷新出去
        } catch (FileNotFoundException e) {
            e.printStackTrace();
            System.out.println("檔案未找到");
        } catch (IOException e) {
            e.printStackTrace();
            System.out.println("檔案寫出失敗");
        }finally{
            //4.釋放資源 :關閉
            try {
                if (null != os) {
                    os.close();
                }
            } catch (Exception e2) {
                System.out.println("關閉輸出流失敗");
            }
        }
    }
}