Java輸入輸出之字節流拷貝文件


步驟:

1.構造文件字節輸入輸出流

2.創建一個字節數組,用來指定每次復制的字節大小

3.輸入流從源文件讀取字節,輸出流將字節寫入文件

 

下面通過一段程序進行說明:

import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;

public class JavaIO {
    public static void main(String[] args) throws IOException {
        FileInputStream fis = new FileInputStream(
                "E:\\Download\\struts-2.3.1.2-all.zip");
        FileOutputStream fos = new FileOutputStream("E:\\a.zip");
        byte[] b = new byte[1024000];
        int n;
        while ((n = fis.read(b)) != -1) {
            fos.write(b, 0, n);
        }
        fis.close();
        fos.close();
    }
}

fis.read(b)的作用是從源文件最多讀取b.length字節的數據送給b數組,返回的是讀入的字節總數。

本例中b.length的長度指定為1024000,當最后一次不足1024000,例如只剩下5000字節時,返回的就是5000,此時所有字節讀取完畢。下一次讀入時由於已到達文件末尾,返回-1。

fos.write(b, 0, n)意思是將byte數組從偏移量0開始的n個字節寫入文件輸出流。

程序結束后記得要關閉輸入輸出流。


免責聲明!

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



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