EOFException的意思我知道。我想知道怎麼實現每次以4個字節的速度復制圖片。用字符流會損壞圖片,只能用字節流。字節流的子類DataInputStream和DataOutputStream配合每次就能傳4個字節,傳視屏不完整,但傳圖片就拋出EOFException。
import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.EOFException;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
public class TestDateInputStream {
public static void main(String[] args) {
// TODO Auto-generated method stub
try {
DataInputStream dis=new DataInputStream(new BufferedInputStream(new FileInputStream(new File("E:\\Temp\\245368.jpg"))));
DataOutputStream dos=new DataOutputStream(new BufferedOutputStream(new FileOutputStream(new File("E:\\Temp\\36544.jpg"))));
int i=0;
while( (i=dis.readInt())!=-1){
dos.writeInt(i);
System.out.println(i);
}
dis.close();
dos.flush();
dos.close();
System.out.println("OK");
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
你為什麼要用date流。。。貌似這個是網絡編程時有可能用到的,你換個字節流