java--照片和BYTE这些东西阵列

使用java,图像被变换成BYTE排列、和该阵列为图象,远程传输的图片进行

参考:http://blog.csdn.net/huang9012/article/details/18241539

代码例如以下:

package com.third.demo;

import java.io.ByteArrayOutputStream;
import java.io.File;

import javax.imageio.stream.FileImageInputStream;
import javax.imageio.stream.FileImageOutputStream;

import org.json.JSONObject;

public class CreatUploadJson {

	public static void buildJson() throws Exception {
		// 图片转换成 BYTE数组
		byte[] data = null;
		FileImageInputStream input = new FileImageInputStream(new File("d://7.jpg"));
		ByteArrayOutputStream output = new ByteArrayOutputStream();
		byte[] buf = new byte[1024];
		int numBytesRead = 0;
		while ((numBytesRead = input.read(buf)) != -1) {
			output.write(buf, 0, numBytesRead);
		}
		data = output.toByteArray();
		output.close();
		input.close();

//		JSONObject jo = new JSONObject();
//		jo.put("agentId", "001");
//		jo.put("picType", "1");
//		jo.put("picName", "素材名称");
//		jo.put("picByte", data);
//
//		System.out.println(jo.toString());

		// byte数组 转换成 图片
		FileImageOutputStream imageOutput = new FileImageOutputStream(new File("e://1.jpg"));
	    imageOutput.write(data, 0, data.length);
	    imageOutput.close();
	}

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		try {
			buildJson();
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}

	}

}

版权声明:本文博客原创文章。博客,未经同意,不得转载。

时间: 2024-10-06 14:15:36

java--照片和BYTE这些东西阵列的相关文章

Redis入门 – Jedis存储Java对象 - (Java序列化为byte数组方式)

Redis入门 – Jedis存储Java对象 - (Java序列化为byte数组方式) 原文地址:http://alanland.iteye.com/admin/blogs/1600685(欢迎转载 - 转载请保留该原文链接) 07/19/12 03:08:05 PM 在Jedis开发中,我们很多时候希望直接把一个对象放到Redis中,然后在需要的时候取出来.Redis的key和value都支持二进制安全的字符串,存储Java对象不是问题,下面我们看一下如何来实现. 1要存储的对象 现在写一个

[JAVA] IOException: Invalid byte 2 of 2-byte UTF-8 sequence(解决办法)

日志打印不全,后台只打印出出标题的异常信息: 先前的日志打印信息:log.debug(e.getMessage()); 后面改成了日志打印信息:log.debug(e); log.debug(e.getStackTrace()); 日志打印的重要性,不能单单只打印Message   问题原因查找,这个问题在微信支付的维权功能中出现,在网上找了原因之后,下面这个连接给出的最准确: http://blog.csdn.net/linkyou/article/details/3975491   根本原因

java 无符号byte转换

java中的byte类型是有符号的,值得范围是-128-127 做网络通讯时,接收过来的数据往往都是无符号的byte,值得范围是0-255 因此直接转换时,存储到java显示的值就会有问题 int ori=200; System.out.println("原始byte值:"+ori); Byte b=(byte)ori; System.out.println("java中byte值:"+b); Integer i=b.intValue(); System.out.p

Java 基础类型转换byte数组, byte数组转换基础类型

Java 基础类型转换byte数组, byte数组转换基础类型 Java类型转换 java类对象转化为byte数组

详解java中的byte类型

Java也提供了一个byte数据类型,并且是基本类型.java byte是做为最小的数字来处理的,因此它的值域被定义为-128~127,也就是signed byte.下面这篇文章主要给大家介绍了关于java中byte类型的相关资料,需要的朋友可以参考下. 介绍 byte,即字节,由8位的二进制组成.在Java中,byte类型的数据是8位带符号的二进制数. 在计算机中,8位带符号二进制数的取值范围是[-128, 127],所以在Java中,byte类型的取值范围也是[-128, 127]. 取值范

Java核心知识点-Byte详解

Java虚拟机中没有byte类型 恩...怎么说呢,个人感觉这个说法有点儿唬人的意思.的确,当这个想法刚刚出现在我的脑海中的时候我觉得也有些胡扯,毕竟byte类型就在那里,怎么能说Java虚拟机中没有byte类型呢? 好吧,我来稍稍的解释一下.Java虚拟机对基本类型的操作基本都是在栈上完成的(这个是可信的,因为不是我说的).我们知道,Java在处理一个语句的时候,首先它会先把用到的操作数压到栈中,然后再从栈中弹出进行计算,最后将结果再压回到栈中.任何对byte的操作也会如此.因此,Java对b

Java类型相互转换byte[]类型,blob类型

在我们的程序开发当中,经常会用到java.sql.Blob.byte[].InputStream之间的相互转换,但在JDK的API当中,又没有直接给我们提供可用的API,下面的程序片段主要就是实现它们之间互换的util. 一.byte[]=>Blob 我们可以通过Hibernate提供的表态方法来实现如: org.hibernate.Hibernate.Hibernate.createBlob(new byte[1024]); 二.Blob=>byte[] 目前没有找到好一点的API提供,所以

java中为什么byte的取值范围是-128到+127

概念:java中用补码表示二进制数,补码的最高位是符号位,最高位为“0”表示正数,最高位为“1”表示负数.正数补码为其本身:负数补码为其绝对值各位取反加1:例如:+21,其二进制表示形式是00010101,则其补码同样为00010101-21,按照概念其绝对值为00010101,各位取反为11101010,再加1为11101011,即-21的二进制表示形式为11101011 步骤:1.byte为一字节8位,最高位是符号位,即最大值是01111111,因正数的补码是其本身,即此正数为0111111

java中的byte有什么作用?

byte即字节的意思,是java中的基本类型,用心申明字节型的变量. 通常在读取非文本文件时(如图片,声音,可执行文件)需要用字节数组来保存文件的内容,在下载文件时,也是用byte数组作临时的缓冲器接收文件内容.所以说byte在文件操作时是必不可少的.不管是对文件写入还是读取都要用到.byte在java中是一种是数据类型,代表一个字节,一个字节包含8个位,所以,byte类型的取值范围为-128到127.在某些程序中(尤其是和硬件有关的程序)会将某些数据存储到字节类型的变量中,比如00110010