C#程序中将图片转换为byte数组,并将byte数组转换为图片

/// <summary>
/// 将图片以二进制流
/// </summary>
/// <param name="path"></param>
/// <returns></returns>
public byte[] SaveImage(String path)
{
FileStream fs = new FileStream(path, FileMode.Open, FileAccess.Read); //将图片以文件流的形式进行保存
BinaryReader br = new BinaryReader(fs);
byte[] imgBytesIn = br.ReadBytes((int)fs.Length); //将流读入到字节数组中
return imgBytesIn;
}

/// <summary>
/// 现实二进制流代表的图片
/// </summary>
/// <param name="imgBytesIn"></param>
public void ShowImgByByte(byte[] imgBytesIn)
{
string NewImageName = "AAAA";//ImageName(CenterId);//获得图片的名字
string ImagePath = @"F:/AQPXImageURL/" + NewImageName.ToString() + ".jpg";

MemoryStream ms = new MemoryStream(imgBytesIn);

Bitmap bmp = new Bitmap(ms);
bmp.Save(ImagePath, ImageFormat.Bmp);
ms.Close();
//return NewImageName;

//pictureBox1.Image = Image.FromStream(ms);
}

/// <summary>
/// 这是用于测试
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btn_jituan_Click(object sender, EventArgs e)
{
byte[] bys = SaveImage("E:/LYX/SafeTrainAll_AQPX/SafeTrainAll_AQPX/DefaultModule/Exam/ExamImage/2015-08-10#2/00000052x1.jpg");
ShowImgByByte(bys);
}

时间: 2024-08-29 12:34:34

C#程序中将图片转换为byte数组,并将byte数组转换为图片的相关文章

在WPF程序中将控件所呈现的内容保存成图像(转载)

在WPF程序中将控件所呈现的内容保存成图像 转自:http://www.cnblogs.com/TianFang/archive/2012/10/07/2714140.html 有的时候,我们需要将控件所呈现的内容保存成图像保存下来,例如:InkCanvas的手写墨迹,WebBrowser中的网页等.可能有人会说,这个不就是截图嘛,找到控件的坐标和大小,调用截图API不就可以了嘛.的确,对于规则的控件来说,通过截图的却可以实现,可是,如果控件不规则或不透明度不是100%,则会把其背景控件的视觉效

使用Net.Sockets.TcpListener和Net.Sockets.TcpClient进行图片传输时如何精确控制接收缓存数组大小

<span style="font-size:18px;">在dotnet平台Net.Sockets.TcpListener和Net.Sockets.TcpClient已经为我们封装了所有Socket关于tcp部分,操作也更为简单,面向数据流.使用TcpClient的GetStream方法获取数据流后可以方便的对数据流进行读写操作,就如同本地磁盘的文件读写一样,使得程序员在设计程序时更为便捷简单.</span> 但如果你使用过这两个对象进行数据传输的时候,你会发

黑马程序员----java学习笔记之数组、二维数组,附相关面试题

------<a href="http://www.itheima.com" target="blank">Java培训.Android培训.iOS培训..Net培训</a>.期待与您交流! ------- 一:数组(掌握) (1)数组:存储同一种数据类型的多个元素的容器. (2)特点:每一个元素都有编号,从0开始,最大编号是长度-1. 编号的专业叫法:索引 (3)定义格式 A:数据类型[] 数组名; B:数据类型 数组名[]; 推荐是用A方

使用xxd命令把png图片转成c语言使用的数组

#!/bin/bash image_list=$(ls *.png) for imag in ${image_list} do if test -f $imag then xxd -i ${imag} >> test.h fi done 参考:http://www.cnblogs.com/killkill/archive/2010/06/23/1763785.html 使用xxd命令把png图片转成c语言使用的数组

题目:返回一个整数数组中最大子数组的和。(要求程序必须能处理1000 个元素)

1.题目:返回一个整数数组中最大子数组的和. 2.要求: 要求程序必须能处理1000 个元素: 每个元素是int32 类型的: 输入一个整形数组,数组里有正数也有负数. 数组中连续的一个或多个整数组成一个子数组,每个子数组都有一个和. 求所有子数组的和的最大值.要求时间复杂度为O(n). 3.设计思路: 将数组大小定义为1000,对于每个元素定义为int32类型,我们取数的时候对其进行了乘4294967296,使数组内的元素可以越界. 4.程序代码: 1 #include <iostream>

能返回一个整数数组中最大子数组的和的小程序

要求: 1.要求程序必须能处理1000个元素: 2.每个元素是int32类型的,出现子数组之和大于整型表示的最大范围会出现什么情况: 3.输入一个整形数组,数组里有正数也有负数: 4.数组中连续的一个或多个整数组成一个子数组,每个子数组都有一个和: 5.求所有子数组的和的最大值.要求时间复杂度为O(n). 思路: 就是用一个一维数组记录以每个元素为结尾的子序列的最大和,然后再扫描一遍这个数组,以获取最大值. 源代码: #include<iostream> #define N 1000 usin

返回一个整数数组中最大子数组的值(程序能处理1000个元素)

课堂练习: 题目:要求返回一个整数数组中最大子数组的值 要求:程序必须能处理1000个元素 每个元素是int32类型的 设计思路: 将数组的大小定义为1000,每个元素定义为int32类型,取数值时对数成2的32次方,这样数值可以越界. 程序: #include <iostream>  #include<stdlib.h>  #include<time.h>  using namespace std;    int main()  {     int i;     in

返回一个二维整数数组中最大子数组的和的小程序

要求: 1.输入一个二维整形数组主,数组里有正数也有负数. 2.二维数组中连续的一个子矩阵组成一个子矩阵组成一个子数组,每个子数组都有一个和. 思路:根据上次写的找一维数组中最大子数组的经验,不妨把二维数组转化为一维数组的形式先进行求和,再比较,选出最大的子数组.首先以第一行为上界,依次向下确定数组的最大范围,把最大子数组按照一列有几个数,分成几种不同的行,对于产生数组的,进行一维数组求和计算并找出最大值.然后将上界下调一行,从第二行开始,依次向下确定数组最大范围,重复以上步骤. 代码如下: #

base64转byte[]、byte[]转base64、byte[]转图片后图片按固定宽高缩放

/**     * 图片缩放     */    public static BufferedImage ImageStringByte(int width, byte[] b) {                InputStream buffin = new ByteArrayInputStream(b);        BufferedImage src = null;        try {            src = ImageIO.read(buffin);        }

微信小程序轮播图组件 swiper,swiper-item及轮播图片自适应

官网地址:https://developers.weixin.qq.com/miniprogram/dev/component/swiper.html index.wxml文件 indicator-dots:是否显示面板指示点 autoplay:是否自动切换 interval:自动切换时间间隔 circular:是否采用衔接滑动 duration:滑动动画时长 更多属性请查看官网 <swiper indicator-dots="{{indicatorDots}}" autopla