Java读取和写入图片

        File originalFile = new File("D:\\test\\dabai.jpg");//指定要读取的图片
        try {
            File result = new File("D:\\test0\\dabai.jpg");//要写入的图片
            if (result.exists()) {//校验该文件是否已存在
                result.delete();//删除对应的文件,从磁盘中删除
                result = new File("D:\\test0\\dabai.jpg");//只是创建了一个File对象,并没有在磁盘下创建文件
            }
            if (!result.exists()) {//如果文件不存在
                result.createNewFile();//会在磁盘下创建文件,但此时大小为0K
            }
            FileInputStream in = new FileInputStream(originalFile);
            FileOutputStream out = new FileOutputStream(result);// 指定要写入的图片
            int n = 0;// 每次读取的字节长度
            byte[] bb = new byte[1024];// 存储每次读取的内容
            while ((n = in.read(bb)) != -1) {
                out.write(bb, 0, n);// 将读取的内容,写入到输出流当中
            }
         
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }finally{
            //执行完以上后,磁盘下的该文件才完整,大小是实际大小
            out.close();// 关闭输入输出流
            in.close();
        }

两份图片大小与尺寸相同

Java读取和写入图片_第1张图片Java读取和写入图片_第2张图片

 

欢迎关注我的公众号

你可能感兴趣的:(Java)