`

二进制与字符串转换(图片转换)

 
阅读更多

 将一个图片转换成二进制编码,再将一个二进制字符串转换成为图片实例:

 

 

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;
		}
	}
}

 

分享到:
评论

相关推荐

    16进制字符串显示图片工具

    1. **二进制与16进制之间的转换**:理解如何将16进制字符串转换成对应的二进制数据,再进一步转换为像素值。 2. **图像数据结构**:了解图片的内部结构,如JPEG、PNG或BMP格式的文件头信息,以及像素数据的排列方式...

    二进制字节与字符串之间的转换

    你可以通过运行这个程序,观察输入图片文件和输出的字符串,理解二进制字节与字符串之间的转换过程。同时,也可以通过反向转换验证数据是否能准确还原,确保图片的质量和完整性不受影响。 总之,理解和掌握二进制...

    C#中图片、二进制与字符串的相互转换方法

    首先,我们来看如何将图片转换为二进制。在C#中,图片本质上是一个二进制数据流,可以通过文件流(FileStream)读取图片文件并将其转换为字节数组(byte[])。`GetPictureData`函数就是一个这样的例子,它接受一个图片...

    C#实现把图片转换成二进制以及把二进制转换成图片的方法示例

    本文实例讲述了C#实现把图片转换成二进制以及把二进制转换成图片的方法。分享给大家供大家参考,具体如下: private void button1_Click(object sender, EventArgs e) { string path = this.textBox1.Text; byte...

    16进制字符串显示图片

    在标题“16进制字符串显示图片”中,所指的是一种将16进制字符串转换为图像的方法。这种技术通常应用于数据传输、存储或编码图像,尤其是当需要以文本形式表示图像数据时。16进制字符串实际上是图像原始像素数据的二...

    将图片转成二进制并生成Base64编码字符串,再将二进制转换成各种图片

    例如,`TestImageBinary.java`可能会有一个方法,接受图片路径作为输入,读取图片,将其转换为Base64字符串,然后再反向操作,将Base64字符串转换回图片。 `20090709442.jpg`文件很可能是用来测试上述代码的图片。...

    jpg图片转换成十六进制字符文件

    描述中提到的“该程序主要用于将jpg图片的数据流转换为十六进制字符串”,这意味着有一个特定的程序或脚本,它可以读取jpg图片的原始二进制数据,然后将其转化为由0到9和A到F这些字符组成的十六进制序列。...

    将图片转换成16进制代码,同时也可将16进制代码转换成jpg图片

    这样,每4位二进制数可以转换为一个16进制数,使得较长的二进制字符串变得更简洁。 3. **图片转16进制**: 转换过程包括读取图片的二进制数据,然后将每个字节转换成相应的16进制字符串。例如,如果一个字节的二...

    Android 实现图片转二进制流及二进制转字符串

    这个方法将二进制流转换为十六进制字符串。 三、图片压缩 在 Android 中,我们可以使用 Matrix 对象来压缩图片。下面是一个示例代码: ```java private Bitmap compressBitmap(Bitmap bitmap) { Matrix matrix = ...

    PHP 字符串与二进制互转

    要将PHP字符串转换为二进制,可以使用`bin2hex()`函数将字符串转换为十六进制,然后再将十六进制转换为二进制。这是因为PHP内建的函数并没有直接提供字符串到二进制的转换。下面是一个示例: ```php $string = ...

    十六进制与jpg图片之间的转换

    十六进制与jpg图片之间的转换涉及到两个主要过程:十六进制到二进制的转换以及二进制到jpg图像的还原。十六进制数据首先需要转换为二进制,因为计算机是以二进制形式(0和1)处理数据的。这个过程可以通过将每个十六...

    java读取图片并转化为二进制字符串的实现方法

    Java读取图片并转化为二进制字符串的实现方法是一个涉及到文件操作、字节流处理、Base64编码和解码的技术话题。本文将详细介绍上述过程的步骤和关键知识点。 首先,我们需要了解Java中处理文件读写的基本类,比如`...

    图像处理-图片转二进制工具

    “图片转二进制”明确了工具的主要功能,即把图片转换为二进制格式。“HTML”则表明此工具与Web开发有关,特别是在如何在网页上呈现图片方面。 在压缩包内的文件中,“图片转二进制工具说明.docx”很可能是对如何...

    VB将二进制图片文件转换为Base64字符串文本

    如果需要从Base64字符串恢复图片,可以使用类似的方法,先使用Convert.FromBase64String将字符串转换回字节数组,然后写入到新的文件中。 在实际应用中,这样的功能可能用于在数据库中存储图片数据,或者在网络请求...

    mysql 二进制转换工具

    MySQL二进制转换工具主要涉及的是数据库管理和网络安全方面的技术,特别是与数据编码、文件传输以及权限提升相关的操作。在MySQL中,二进制格式通常用于存储和处理原始数据,如图像、音频或自定义文件,因为这些数据...

    js 显示base64编码的二进制流网页图片

    其中,有些工具支持在线将图片转换为Base64编码的字符串,进一步简化了开发流程。然而,使用这些工具时,也需注意数据的版权和隐私保护问题,避免敏感数据的泄露。 总结来说,Base64编码以及Data URI scheme在Web...

    实现数据库二进制流转换成图片保存本地

    通过以上步骤,我们可以从数据库中提取二进制流,将其转换回图片并保存到本地。在实际应用中,此功能常用于数据备份、图片展示等场景。需要注意的是,如果数据库中的图片数据量大,应考虑分批处理,避免一次性加载...

    C#二进制图片的存储或读取

    要将图片转换为二进制流,首先需要使用`System.Drawing`命名空间中的`Image`类加载图片文件。然后,创建一个`MemoryStream`对象,通过`Image.Save`方法将图片保存到内存流中,实现图片到二进制流的转换。以下是一个...

    二进制文件、文本文件转换工具

    3. 转换字节:将读取到的字节通过`BitConverter.ToString`方法转换为ASCII表示的十六进制字符串。 4. 输出结果:将转换后的字符串输出到控制台或者保存到新的文本文件中。 需要注意的是,这种转换可能会丢失原始二...

Global site tag (gtag.js) - Google Analytics