本帖最后由 air 于 2013-12-19 17:39 编辑
- /*
- 复制一张图片
- 思路:
- 1.用字节读取流对象和图片关联,
- 2.用字节写入流对象创建一个图片文件,用于存储获取到的图片数据。
- 3,通过循环读写,完成数据的存储,
- 4,关闭资源。
- */
- import java.io.*;
- class CopyPic
- {
- public static void main(String[] args)
- {
- FileOutputStream fos = null;
- FileInputStream fis = null;
- try
- {
- fis = new FileInputStream("g:\\3.png");
- fos = new FileOutputStream("g:\\4.png");
- byte[] buf = new byte[1024];
- int len = 0;
- while((len = fis.read(buf))!=-1)
- {
- fos.write(buf,0,len);
- }
- }
- catch (IOException e)
- {
- throw new RuntimeException("你的复制木有成功");
- }
- finally
- {
- try
- {
- if(fis!=null)
- fis.close();
- }
- catch (IOException e)
- {
- throw new RuntimeException("你的读取关闭木有成功");
- }
- try
- {
- if(fos!=null)
- fos.close();
- }
- catch (IOException e)
- {
- throw new RuntimeException("你的写入关闭木有成功");
- }
-
- }
- }
- }
复制代码
二话不说,强力插入
代码如上,其中将要读取文件格式是jpeg,编译成功,运行时报异常复制木有成功.
后来,将jpeg改成png,编译运行均成功..难道java不是执行的windows 里面的复制方法吗?
java里面独有的复制方法对jpeg和png 为啥会有不一样的待遇啊????
谁能告诉我
1,原因是什么?
2,原理是什么?
|