Java中如何用字节流复制图片
public class CopyPicture {
public static void main(String[] args) {
FileInputStream inputStream=null; //创建字节输入流
FileOutputStream outputStream=null; //创建字节输出流
try {
inputStream=new FileInputStream("e://123.jpg"); //指定字节输入流要读取的文件
outputStream=new FileOutputStream("e://1234.jpg"); //指定复制完成后文件所在位置及名称
int len=0; //定义一个变量,用来表示读取到的字节数
byte [] buf=new byte[1024]; //定义字节数组,用来存储读到的字节
while((len=inputStream.read(buf))!=-1) { //循环读取,当读到文件末尾时,再往下读会读取不到文件,这时read方法会返回-1,表示后面没有内容,已经读完;
outputStream.write(buf, 0, len); //用文件输出流的write方法开始往外写,buf表示将字节数组byte写出,0表示从数组的第0个位置开始写,len表示写出多少个
}
System.err.println("复制成功");
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
finally {
try {
inputStream.close(); //关闭输入流
} catch (IOException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
if(outputStream!=null) { //判断输出流中是否空,不为空的话刷新清空
try {
outputStream.flush();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
try {
outputStream.close(); //关闭输出流
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}