バイトフロー_メディアファイルをコピー_練習する
5710 ワード
方法1:カスタムバッファ(比較的一般的)
1つの文字ストリームで画像をコピーできますか?いいえ、バイトデータを読み取って直接目的地に書かないで、コードテーブルを探しに行きます.対応するデータがなければ、この時コードテーブルは未知の文字領域を持ってきます.
1 import java.io.FileInputStream;
2 import java.io.FileOutputStream;
3 import java.io.IOException;
4
5 public class CopyDemo {
6 public static void main(String[] args) throws IOException {
7 copy();
8 }
9
10 public static void copy() throws IOException {
11 FileInputStream fis = new FileInputStream("E:\\1.avi");
12 FileOutputStream fos = new FileOutputStream("F:\\3.avi");
13
14 byte[] buf = new byte[1024];
15
16 int len = 0;
17
18 while((len = fis.read(buf))!= -1){
19 fos.write(buf,0,len);
20 }
21
22 fis.close();
23 fos.close();
24 }
25 }
import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
public class CopyDemo {
public static void main(String[] args) throws IOException {
copy();
}
public static void copy() throws IOException {
FileInputStream fis = new FileInputStream("E:\\1.avi");
BufferedInputStream bfis = new BufferedInputStream(fis);
FileOutputStream fos = new FileOutputStream("F:\\6.avi");
BufferedOutputStream bfos = new BufferedOutputStream(fos);
//byte[] buf = new byte[1024];// ,
int len = 0;
while((len = bfis.read())!= -1){
bfos.write(len);
//bfos.flush();
}
bfis.close();
bfos.close();
}
}
1つの文字ストリームで画像をコピーできますか?いいえ、バイトデータを読み取って直接目的地に書かないで、コードテーブルを探しに行きます.対応するデータがなければ、この時コードテーブルは未知の文字領域を持ってきます.