`

java 把二进制文件转化为字节数组

    博客分类:
  • Java
阅读更多

在java 中,如何把二进制文件(如图片,ssl证书 )转化为字节数组呢?

代码如下:

@org.junit.Test
	public void test055() throws IOException {
		File inFile = new File("d:\\Chrysanthemum.jpg");
		FileInputStream fileInputStream = new FileInputStream(inFile);
		ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
		int i;
		//转化为字节数组流
		while ((i = fileInputStream.read()) != -1) {
			byteArrayOutputStream.write(i);
		}
		fileInputStream.close();
		// 把文件存在一个字节数组中
		byte[] filea = byteArrayOutputStream.toByteArray();

		byteArrayOutputStream.close();
		String encoding = "ISO-8859-1";
		String fileaString = new String(filea, encoding);
		System.out.println(fileaString);
		// 写入文件
		FileOutputStream fileOutputStream = new FileOutputStream("d:/b.png");
		fileOutputStream.write(fileaString.getBytes(encoding));
		fileOutputStream.flush();
		fileOutputStream.close();

	}

 注意:

(1)使用ByteArrayOutputStream 来把二进制流转化为字节数组流;

(2)把字节数组转化为String类型时,一定要使用ISO-8859-1编码;

String encoding = "ISO-8859-1";

String fileaString = new String(filea, encoding);

(3)通过字符串获取字节数组时,一定要使用ISO-8859-1编码:

fileOutputStream.write(fileaString.getBytes(encoding));

 

分享到:
评论

相关推荐

    java中进制转换(二进制,十进制,十六进制)及字节数组与十六进制的转换

    最近由于工作上的需要,遇到进制转换的问题。涉及到的进制主要是 十进制,十六进制,二进制中间的转换。还包括了一个字节数组 与十六进制字符串的互相转换。估计遇到蓝牙通信的朋友,应该用的上。

    JAVA二进制字节数组字符十六进制BCD编码转换.doc

    JAVA二进制字节数组字符十六进制BCD编码转换

    java进制转换工具类

    二进制数组转换为二进制字符串 将二进制数组转换为十六进制字符串 将十六进制转换为二进制字节数组 将十六进制转换为二进制字符串

    java二进制,字节数组,字符,十六进制,BCD编码转换

    /* java二进制,字节数组,字符,十六进制,BCD编码转换2007-06-07 00:17/** *//** * 把16进制字符串转换成字节数组 * @param hex * @return */

    如何将音频,视频文件转换为二进制格式并存储在数组中

    您可以读取任何文件并将其存储在字节数组中,如下所示:byte [] bytes = File.ReadAllBytes(“ filename.ext”);

    进制数据转换java代码

    二进制字符串转换成十六进制字符串,并返回byte数组 把16进制字符串转换成字节数组 把字节数组转换成16进制字符串 十六进制字符串转二进制字符串 ...将数字(十进制)串转换为固定位数的二进制字符串

    数字类型 转换 字节数组

    * long: 长整数类型 占8个字节 64位二进制 byte[0] byte[1] byte[2] byte[3] byte[4] byte[5] * byte[6] byte[7] * float: 浮点数(小数) 占4个字节 32位二进制 byte[0] byte[1] byte[2] byte[3] * ...

    Java文件处理工具类--FileUtil

    * 从输入流读取数据为二进制字节数组. * @param streamIn * @return * @throws IOException */ public static byte[] readFileBinary(InputStream streamIn) throws IOException { BufferedInputStream...

    JavaIEEE754浮点数的转换方法

    [Java]IEEE754浮点数的转换方法,方法都写好了,直接复制过去就可以用了,就这么简单!

    Java核心技术II(第8版)

    1.3 读入和写出二进制数据 1.3.1 随机访问文件 1.4 ZIP文档 1.5 对象流与序列化 1.5.1 理解对象序列化的文件格式 1.5.2 修改缺省的序列化机制 1.5.3 序列化单例和类型安全的枚举 1.5.4 版本管理 1.5.5 为克隆使用...

    文本、十六进制、HTML和程序编辑器

    软件特别增强了对于二进制文件编辑的支持,可以分组显示HEX值,可以把选中的HEX字节转换成C/C++、Java、Pascal数组形式,支持HEX编辑的 REDO/UNDO,亮显编辑过的HEX字节。支持把文本文件转换成HTML格式,同时还保持...

    javabiginteger源码-bytes-java:Bytes是一个实用程序库,可以轻松地在Java中创建、解析、转换、验证和转换字节数组

    中创建、解析、转换、验证和转换字节数组。 它的主类Bytes是字节和主要 API 的集合。 它支持写时复制和可变访问,因此调用者可能会决定支持性能。 这可以看作是 提供的功能的组合,但在字节数组的微观和宏观层面上...

    Bson:Bson是一个Java库,可用于将Java对象转换为二进制数据以进行存储传输使用更少的空间

    value根据实际的类型转换为二进制保存。二级制保存文件本身包含格式信息,但只包含层级和基本类型,不包含属性名使用方式Bson bson = new Bson();文档梳理【腾讯文档】Bson格式设计1字节Version + 对象数据对象数据...

    基于Java 实现 MD5 算法【100011772】

    首先一次性读取某文件的字节流并存储为 byte[],再通过 Long.toString 函数对字节数组的每一个 byte 元素转换为 01 字符串并添加到输出变量的尾端,并返回输出。转换为二进制字符串是因为这样更容易操作。Byte 转换...

    java源码包2

     Java生成密钥、保存密钥的实例源码,通过本源码可以了解到Java如何产生单钥加密的密钥(myKey)、产生双钥的密钥对(keyPair)、如何保存公钥的字节数组、保存私钥到文件privateKey.dat、如何用Java对象序列化保存私钥...

    图片转zpl编码的方法,支持bmp、png、jpg等各种格式以及13种常用条码的zpl命令

    实现思路: 1、获取图片的二值化字节数组 这一步是关键 2、将字节数组转为十六进制 3、压缩十六进制字符串 结尾为1、0或者与上一行相同的;相同的连续字符压缩 4、拼凑ZPL编码,宽度需要扩大,因为需要时8个点(1字节)...

    dd-plist:一个Java库,提供对ASCII,XML和二进制属性列表的支持

    从文件,流或字节数组读取/写入属性列表 在属性列表格式之间转换 属性列表内容作为来自NeXTSTEP环境的对象(NSDictionary,NSArray,NSString等)提供。 将本机Java数据结构序列化为属性列表对象 从属性列表对象反...

    AptEdit Pro 5.1.0破解版

    软件特别增强了对于二进制文件编辑的支持,可以分组显示HEX值,可以把选中的HEX字节转换成C/C++、Java、Pascal数组形式,支持HEX编辑的 REDO/UNDO,亮显编辑过的HEX字节。支持把文本文件转换成HTML格式,同时还保持...

    java源码包---java 源码 大量 实例

     Java生成密钥、保存密钥的实例源码,通过本源码可以了解到Java如何产生单钥加密的密钥(myKey)、产生双钥的密钥对(keyPair)、如何保存公钥的字节数组、保存私钥到文件privateKey.dat、如何用Java对象序列化保存私钥...

    Java实现AES加密和解密算法

    在demo中使用了两个转换方法,及二进制转化成十六进制,和十六进制转化成二进制; 我们在AES加密的时候需要使用一个加密算的公共密钥来实现加密和解密; 加密后的字节数组不能直接转化为字符串,需要我们通过给出的...

Global site tag (gtag.js) - Google Analytics