将一个图片转换成二进制编码,再将一个二进制字符串转换成为图片实例:
public class Test{ public static void main(String[] args) { try{ // 将图片转换成字符串 File f = new File("c:\\biao.png"); FileInputStream fis = new FileInputStream( f ); byte[] bytes = new byte[fis.available()]; fis.read(bytes); fis.close(); // 生成字符串 String imgStr = byte2hex( bytes ); System.out.println( imgStr); // 将字符串转换成二进制,用于显示图片 // 将上面生成的图片格式字符串 imgStr,还原成图片显示 OutputStream o = new FileOutputStream("c:\\878789.png"); byte[] imgByte = hex2byte( imgStr ); InputStream in = new ByteArrayInputStream( imgByte ); byte[] b = new byte[1024]; int nRead = 0; while( ( nRead = in.read(b) ) != -1 ){ o.write( b, 0, nRead ); } o.flush(); o.close(); in.close(); }catch(Exception e){ e.printStackTrace(); }finally{ } } /** * 二进制转字符串 * @param b byte数组 * @return 二进制字符串 */ public static String byte2hex(byte[] b){ StringBuffer sb = new StringBuffer(); String stmp = ""; for (int n = 0; n < b.length; n++) { stmp = Integer.toHexString(b[n] & 0XFF); if (stmp.length() == 1) { sb.append("0" + stmp); } else { sb.append(stmp); } } return sb.toString(); } /** * 字符串转二进制 * @param str 字符串 * @return byte数组 */ public static byte[] hex2byte(String str) { if (str == null) return null; str = str.trim(); int len = str.length(); if (len == 0 || len % 2 == 1) return null; byte[] b = new byte[len / 2]; try { for (int i = 0; i < str.length(); i += 2) { b[i / 2] = (byte) Integer.decode("0X" + str.substring(i, i + 2)).intValue(); } return b; } catch (Exception e) { return null; } } }
相关推荐
1. **二进制与16进制之间的转换**:理解如何将16进制字符串转换成对应的二进制数据,再进一步转换为像素值。 2. **图像数据结构**:了解图片的内部结构,如JPEG、PNG或BMP格式的文件头信息,以及像素数据的排列方式...
你可以通过运行这个程序,观察输入图片文件和输出的字符串,理解二进制字节与字符串之间的转换过程。同时,也可以通过反向转换验证数据是否能准确还原,确保图片的质量和完整性不受影响。 总之,理解和掌握二进制...
首先,我们来看如何将图片转换为二进制。在C#中,图片本质上是一个二进制数据流,可以通过文件流(FileStream)读取图片文件并将其转换为字节数组(byte[])。`GetPictureData`函数就是一个这样的例子,它接受一个图片...
本文实例讲述了C#实现把图片转换成二进制以及把二进制转换成图片的方法。分享给大家供大家参考,具体如下: private void button1_Click(object sender, EventArgs e) { string path = this.textBox1.Text; byte...
在标题“16进制字符串显示图片”中,所指的是一种将16进制字符串转换为图像的方法。这种技术通常应用于数据传输、存储或编码图像,尤其是当需要以文本形式表示图像数据时。16进制字符串实际上是图像原始像素数据的二...
例如,`TestImageBinary.java`可能会有一个方法,接受图片路径作为输入,读取图片,将其转换为Base64字符串,然后再反向操作,将Base64字符串转换回图片。 `20090709442.jpg`文件很可能是用来测试上述代码的图片。...
描述中提到的“该程序主要用于将jpg图片的数据流转换为十六进制字符串”,这意味着有一个特定的程序或脚本,它可以读取jpg图片的原始二进制数据,然后将其转化为由0到9和A到F这些字符组成的十六进制序列。...
这样,每4位二进制数可以转换为一个16进制数,使得较长的二进制字符串变得更简洁。 3. **图片转16进制**: 转换过程包括读取图片的二进制数据,然后将每个字节转换成相应的16进制字符串。例如,如果一个字节的二...
这个方法将二进制流转换为十六进制字符串。 三、图片压缩 在 Android 中,我们可以使用 Matrix 对象来压缩图片。下面是一个示例代码: ```java private Bitmap compressBitmap(Bitmap bitmap) { Matrix matrix = ...
要将PHP字符串转换为二进制,可以使用`bin2hex()`函数将字符串转换为十六进制,然后再将十六进制转换为二进制。这是因为PHP内建的函数并没有直接提供字符串到二进制的转换。下面是一个示例: ```php $string = ...
十六进制与jpg图片之间的转换涉及到两个主要过程:十六进制到二进制的转换以及二进制到jpg图像的还原。十六进制数据首先需要转换为二进制,因为计算机是以二进制形式(0和1)处理数据的。这个过程可以通过将每个十六...
Java读取图片并转化为二进制字符串的实现方法是一个涉及到文件操作、字节流处理、Base64编码和解码的技术话题。本文将详细介绍上述过程的步骤和关键知识点。 首先,我们需要了解Java中处理文件读写的基本类,比如`...
“图片转二进制”明确了工具的主要功能,即把图片转换为二进制格式。“HTML”则表明此工具与Web开发有关,特别是在如何在网页上呈现图片方面。 在压缩包内的文件中,“图片转二进制工具说明.docx”很可能是对如何...
如果需要从Base64字符串恢复图片,可以使用类似的方法,先使用Convert.FromBase64String将字符串转换回字节数组,然后写入到新的文件中。 在实际应用中,这样的功能可能用于在数据库中存储图片数据,或者在网络请求...
MySQL二进制转换工具主要涉及的是数据库管理和网络安全方面的技术,特别是与数据编码、文件传输以及权限提升相关的操作。在MySQL中,二进制格式通常用于存储和处理原始数据,如图像、音频或自定义文件,因为这些数据...
其中,有些工具支持在线将图片转换为Base64编码的字符串,进一步简化了开发流程。然而,使用这些工具时,也需注意数据的版权和隐私保护问题,避免敏感数据的泄露。 总结来说,Base64编码以及Data URI scheme在Web...
通过以上步骤,我们可以从数据库中提取二进制流,将其转换回图片并保存到本地。在实际应用中,此功能常用于数据备份、图片展示等场景。需要注意的是,如果数据库中的图片数据量大,应考虑分批处理,避免一次性加载...
要将图片转换为二进制流,首先需要使用`System.Drawing`命名空间中的`Image`类加载图片文件。然后,创建一个`MemoryStream`对象,通过`Image.Save`方法将图片保存到内存流中,实现图片到二进制流的转换。以下是一个...
3. 转换字节:将读取到的字节通过`BitConverter.ToString`方法转换为ASCII表示的十六进制字符串。 4. 输出结果:将转换后的字符串输出到控制台或者保存到新的文本文件中。 需要注意的是,这种转换可能会丢失原始二...