文件輸入輸出

package com.lovo.test;java

import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;面試

public class TestStream {it

/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
//文件的拷貝,這是可能在面試中出現的手工書寫的代碼!
//功能:將D:/test.avi 拷貝到 F:/wudi.avi
FileInputStream fis = null;
FileOutputStream fos = null;
try {
//一、創建管道
fis = new FileInputStream("D:/test.avi");
fos = new FileOutputStream("F:/wudi.avi");

//二、操做管道
// int b = 0;//明明是讀一個字節,爲何要用一個int來接?
// while((b = fis.read()) != -1){
// fos.write(b);
// }

byte[] b = new byte[1024];
int length = 0;//記錄讀取了多少個有效字節數
while((length = fis.read(b)) != -1){
fos.write(b,0,length);
fos.flush();//強制刷出緩衝區的內容
}
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} finally{
//三、關閉管道
if(fis != null){
try {
fis.close();
} catch (IOException e) {
// TODO Auto-generated block
e.printStackTrace();
}
}
if(fos != null){
try {
fos.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
}io

相關文章
相關標籤/搜索