`
knight_black_bob
  • 浏览: 850927 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

java 图片转字符串 ,字符串转 图片

    博客分类:
  • java
阅读更多

java 图片转字符串 

 

package com.baoy.cn;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;

import sun.misc.BASE64Decoder;
import sun.misc.BASE64Encoder;

public class FileReadTest {

	
	
	public static boolean  download(String imgStr,String imgFile) throws Exception {

		if (imgStr == null) // 图像数据为空
			return false;
		BASE64Decoder decoder = new BASE64Decoder();
		try {
			// Base64解码
			byte[] b = decoder.decodeBuffer(imgStr);
			for (int i = 0; i < b.length; ++i) {
				if (b[i] < 0) {// 调整异常数据
					b[i] += 256;
				}
			}
			// 生成jpeg图片
			String imgFilePath = imgFile;// 新生成的图片
			OutputStream out = new FileOutputStream(imgFilePath);
			out.write(b);
			out.flush();
			out.close();
			return true;
		} catch (Exception e) {
			throw e;
		}
	}

	public static String upload(String imgFile) throws IOException {
	   InputStream in = null;
		byte[] data = null;
		// 读取图片字节数组
		try {
			in = new FileInputStream(imgFile);
			data = new byte[in.available()];
			in.read(data);
		} catch (IOException e) {
			e.printStackTrace();
		} finally {
			try {
				in.close();
			} catch (IOException e) {
				e.printStackTrace();
			}
		}
		// 对字节数组Base64编码
		BASE64Encoder encoder = new BASE64Encoder();
		return encoder.encode(data); 
	}

	
	
	
	@SuppressWarnings("resource")
	public static void main(String[] args) throws Exception {
		String imgFile = "C:\\Users\\baoy\\Desktop\\1.png"; // 声明File对象
		String imgFile2 = "C:\\Users\\baoy\\Desktop\\2.png"; // 声明File对象
		String upload = upload(imgFile);
		System.out.println(upload);
		File file = new File("C:\\Users\\baoy\\Desktop\\1.txt");
		FileWriter fileWriter = new FileWriter(file);
		fileWriter.write(upload); 
		fileWriter.flush();
		boolean download = download(upload, imgFile2);
		System.out.println(download);
	}
}

 

 

 

 

 

 

 

 

 

 

 

 

 

捐助开发者 

在兴趣的驱动下,写一个免费的东西,有欣喜,也还有汗水,希望你喜欢我的作品,同时也能支持一下。 当然,有钱捧个钱场(支持支付宝和微信 以及扣扣群),没钱捧个人场,谢谢各位。

 

个人主页http://knight-black-bob.iteye.com/



 
 
 谢谢您的赞助,我会做的更好!

 

0
0
分享到:
评论

相关推荐

    java 字符串转16进制 16进制转字符串 将两个ASCII字符合成一个字节;

    java 字符串转16进制 16进制转字符串 将两个ASCII字符合成一个字节; java 字符串转16进制 16进制转字符串 将两个ASCII字符合成一个字节; java 字符串转16进制 16进制转字符串 将两个ASCII字符合成一个字节; java ...

    JAVA日期与字符串的转换

    ### JAVA日期与字符串的转换 在Java编程中,经常需要将日期对象转化为字符串形式以便于存储或显示,或者反过来将字符串转化成日期对象来进行日期计算等操作。本文将详细介绍如何在Java中实现这两种转换。 #### 一...

    图片转字符串工具类

    `main`方法是Java程序的入口点,通过传入不同的参数,可以测试图片转字符串和字符串转图片的功能。 6. 文件组织:压缩包内的"图片字符串互转"可能是包含了源代码文件的目录,其中可能包括了实现上述功能的Java类,...

    java对象转换为json字符串或字符串数组

    在Java开发中,将Java对象转换为JSON字符串或字符串数组是一项常见的任务,特别是在与前端交互、数据存储或者网络传输时。JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人阅读和编写,同时也...

    java解析xml字符串

    ### Java解析XML字符串 在给定的代码示例中,我们看到了如何使用JDOM库来解析一个XML字符串,并对其进行操作。下面我们将详细解析这个过程: 1. **初始化XML源**:首先,将XML字符串转化为`StringReader`对象,这...

    java16进制与字符串的转换.pdf

    Java 16进制与字符串的转换 Java 中的 16 进制与字符串之间的转换是非常重要的一种操作,特别是在数据存储和网络传输时。本文将详细介绍 Java 中的 16 进制与字符串的相互转换函数分类。 将 byte 数组以 16 进制的...

    Java分割字符串

    在Java编程语言中,分割字符串是一项常见的操作,它允许我们将一个长字符串分解成多个子字符串,每个子字符串对应原字符串中的某个部分。这通常通过使用`split()`方法来实现,该方法是Java `String`类的一个成员。在...

    Java获取随机字符串

    ### Java 获取随机字符串 在Java开发中,生成随机字符串是一个非常常见的需求,尤其是在密码学、安全验证、数据加密等场景中。本文将详细介绍如何在Java中生成随机字符串,并且会结合给定的部分代码示例进行深入...

    java压缩字符串

    java压缩字符串

    java字符串的各种编码转换

    ### Java字符串的编码转换 在Java中,处理不同字符集之间的字符串转换是一项常见任务。尤其是在处理国际化应用时,理解并掌握各种字符编码格式变得尤为重要。下面将介绍几种常见的字符编码格式以及如何在Java中实现...

    json 字符串转java对象,java对象转json字符串

    自己有空时用java反射写的json转化工具,有不完善之处,多包涵

    java 字符串工具类 java 字符串工具类

    java 字符串工具类 java 字符串工具类java 字符串工具类 java 字符串工具类java 字符串工具类 java 字符串工具类java 字符串工具类 java 字符串工具类java 字符串工具类 java 字符串工具类java 字符串工具类 java ...

    字符串转ASCII ASCII转字符串

    3. 处理多字符字符串 对于包含多个字符的字符串,可以遍历每个字符并应用上述方法。例如,如果我们有一个字符串`"Hello"`,我们可以创建一个ASCII列表,然后将它们转换回去: ```python # Python示例 input_string...

    字符串转16进制ASCII、16进制ASCII转字符串

    字符串转16进制ASCII、16进制ASCII转字符串

    java将字符串中数字转换为中文大写,在输出字符串

    java将字符串中数字转换为中文大写,在输出字符串java将字符串中数字转换为中文大写,在输出字符串java将字符串中数字转换为中文大写,在输出字符串java将字符串中数字转换为中文大写,在输出字符串java将字符串中数字...

    java 字符串转16进制Ascii

    总结一下,Java中字符串转16进制ASCII涉及的关键点有: 1. `char`类型的字符与ASCII码的转换。 2. 使用`Integer.toHexString()`将ASCII码转换为16进制字符串。 3. 处理Unicode字符时,需要考虑字符集和编码方式。 ...

    Java字符串类型转换

    ### Java字符串类型转换详解 在Java编程语言中,字符串(String)是一种常用的数据类型,用于处理文本数据。Java提供了丰富的API来支持不同类型的字符串转换,包括但不限于从字符数组、基本数据类型、对象到字符串...

    使用Java操作JSON字符串对象

    使用Java操作JSON字符串对象,使用Java操作JSON字符串对象

    java 分解字符串

    这可能是一个与Java编程相关的图片,可能包含了一些示例代码的截图或者是解释字符串分解概念的图表。图片内容无法直接描述,但它们通常是理解和学习过程中有价值的补充资料。 总之,Java中的字符串分解是一个基础且...

Global site tag (gtag.js) - Google Analytics