File file = new File("路径");
BufferedImage image = ImageIO.read(file);
ByteArrayOutputStream baos = new ByteArrayOutputStream();
ImageIO.write(image, "png", baos);
byte[] imageBytes = baos.toByteArray();
log.info("收到的二进制信息转数组:" + Arrays.toString(bytes));
ByteBuffer byteBuffer = ByteBuffer.wrap(imageBytes);
// 可以进一步了解Buffer中的flip()、rewind()等方法的使用
JPEG二进制码:
转换为byte[]格式为:[-1, -40, -1, -32, 0, 16, 74, 70, 73, 70, 0, 1, 2,……]
PNG二进制码:
转换成byte[]格式参考为:[-119, 80, 78, 71, ……]
可见,二进制码文件中HEX字符值都被显示出来。右方参考显示了有ASCII码值的字母