将图片转换成二进制, (用到 输入流,输出流)

解析图片二进制数据并重写至另一路径
本文详细介绍了如何从指定路径读取图片文件,将其转换为二进制数据,然后将这些数据写入到另一个指定路径的文件中。包括使用FileInputStream进行读取,使用StringBuilder和Integer.toBinaryString方法处理字节数据,以及通过FileOutputStream进行写入的基本步骤。
  public static void main(String[]args) throws IOException{  
        
            String path = "E:/图片/111.jpg"; //图片地址
            File file = new File(path);     //将图片转换成file类型的文件
            FileInputStream fis = new FileInputStream(file); //创建输入流
            byte[] byt = new byte[fis.available()]; //字节数据      available() 返回的实际可读字节数,也就是总大小
            StringBuilder str = new StringBuilder();// 不建议用String
            fis.read(byt); // 从输入流中读取一定数量的字节,并将其存储在缓冲区数组 b  中。以整数形式返回实际读取的字节数。 
            for (byte bs : byt) {
                    // 将字节数组byte[] 转换为二进制,在以字符串的形式显示出来     
                    //Integer.toBinaryString(bs)返回无符号整数的二进制的字符串表示形式
                    str.append(Integer.toBinaryString(bs)); 
            }
            str.toString();
            
            System.out.println("输出二进制字符串+==="+str);   
            
            // 把字节数组的图片写到另一个地方
            File apple = new File("D:/apple.jpg");
            FileOutputStream fos = new FileOutputStream(apple);
            fos.write(byt);       
            fos.flush();
            fos.close();
    }

 

转载于:https://www.cnblogs.com/sunhaoyu/p/4602958.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值