十六进制字符串与图片互相转换
来源:互联网 发布:易语言反编译成源码 编辑:程序博客网 时间:2024/04/29 17:13
import java.awt.image.BufferedImage;
import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.IOException;
import java.math.BigInteger;
import javax.imageio.ImageIO;
import javax.imageio.stream.FileImageOutputStream;
public class ImgUtil {
public static void main(String[] args) { String hexString = imageToHex("f:/1.jpg","jpg");//将图片转换成十六进制字符串 hexToImage("f://2.jpg",hexString); //将十六进制字符串转化成图片} /** * 将图片转换成十六进制字符串 */ static String imageToHex(String filePath,String suffix) { File f = new File(filePath,suffix); BufferedImage bi; try { bi = ImageIO.read(f); ByteArrayOutputStream baos = new ByteArrayOutputStream(); ImageIO.write(bi, suffix, baos); byte[] bytes = baos.toByteArray(); return new BigInteger(1, bytes).toString(16); } catch (IOException e) { e.printStackTrace(); } return null; } /** * 将十六进制字符串转化成图片 */ static void hexToImage(String filePath,String hexString) { byte[] bytes = stringToByte(hexString); try{ FileImageOutputStream imageOutput = new FileImageOutputStream(new File(filePath)); imageOutput.write(bytes, 0, bytes.length); imageOutput.close(); } catch(Exception ex) { ex.printStackTrace(); } }public static byte[] stringToByte(String s) { int length = s.length() / 2; byte[] bytes = new byte[length]; for (int i = 0; i < length; i++) { bytes[i] = (byte) ((Character.digit(s.charAt(i * 2), 16) << 4) | Character.digit(s.charAt((i * 2) + 1), 16)); } return bytes;}
}
阅读全文
0 0
- 十六进制字符串与图片互相转换
- 字符串与十六进制互相转换 vc
- 字符串与十六进制互相转换 c#
- byte[]数组与十六进制字符串与字符串的互相转换
- byte[]数组与十六进制字符串与字符串的互相转换
- Java 实现十六进制数与图片的互相转换
- java实现十六进制数与图片的互相转换
- Java 字节数组与十六进制表示的字符串,互相转换
- 字符串形式的十六进制与十进制互相转换
- 字符串与图片的互相转换
- 图片文件与字符串互相转换
- MD5加密与byte[]数组与十六进制字符串与字符串的互相转换
- Java的十六进制与字符串之间互相转换函数(16进制与String转换)
- byte[]数组与十六进制字符串与字符串的互相转换(转载)
- [C#] 十六进制 与 十进制 的互相转换
- 字符串与十六进制之间的互相转化
- Java实现Base64互相编解码转换图片与字符串
- Android 图片压缩、Bitmap 与 字符串互相转换
- Coursera 吴恩达 Deep Learning 第二课 改善神经网络 Improving Deep Neural Networks 第二周 编程作业代码Optimization methods
- 动态内存管理
- 装最多水的容器-LintCode
- Mac安装MySQL初始密码设置
- mysql sql长度限制解决
- 十六进制字符串与图片互相转换
- 08jQuery源码解析
- 数据结构链栈实现字符匹配算法
- uva 10596 Morning Walk
- stm32 非DMA方式 多路ADC ADC1,ADC3两种方式求助
- 无法启动此程序,因为计算机丢失opencv_core249d.dll
- randomwalking(10.2hu测)
- 设计模式的分类
- 关于对象初探