1. 程式人生 > >java檔案流——使用位元組流拷貝檔案

java檔案流——使用位元組流拷貝檔案

檔案流:檔案在程式中是以流的形式來操作的


輸入流:資料從資料來源(檔案)到程式(記憶體)的路徑
輸出流:資料從程式(記憶體)到資料來源(檔案)的路徑


java流分為兩種流:
    1、位元組流:可以用於讀寫二進位制檔案及任何檔案 byte
    2、字元流:可以用於讀寫文字檔案,不能操作二進位制檔案


位元組流字元流
輸入InputStream     Reader

輸出OutputStream    Writer

<span style="font-size:18px;">//檔案拷貝到指定位置(位元組流)
package com.io.demo;
import java.io.*;
import java.util.*;

public class Demo4 {

	public static void main(String[] args) {
		
		//先把圖片讀入記憶體,再寫入到檔案,因為是二進位制檔案,只能用位元組流完成
		FileInputStream in=null;
		FileOutputStream out=null;
		try
		{
			in=new FileInputStream("d:\\123\\1.jpg");
			out=new FileOutputStream("d:\\123\\ff\\2.jpg");
			byte[] buf=new byte[1024];
			int n=0;//記錄實際讀取到的位元組數
			while((n=in.read(buf))!=-1)
			{
				//輸出到另一個檔案
				out.write(buf);
			}
		}
		catch(Exception e)
		{
			e.printStackTrace();
		}
		finally
		{
			try 
			{
				in.close();
				out.close();
			} 
			catch (IOException e) 
			{
				e.printStackTrace();
			}
		}
	}
}
</span>