图片转二进制&&二进制转图片
来源:互联网 发布:奇迹双开软件 编辑:程序博客网 时间:2024/05/21 14:00
#region 图片转二进制&二进制转图片
/// <summary>
/// 二进制转换为图片文件存储到指定文件夹
/// </summary>
/// <param name="by">二进制值</param>
/// <param name="path">存储路径</param>
public static void BinaryToFile(byte[] by,string path)
{
//你要先将图片读到一个文件夹内
MemoryStream ms = new MemoryStream((Byte[])by);//by二进制值
Bitmap img = new Bitmap(ms);
//string filepath = HttpContext.Current.Server.MapPath("../API/");
DirectoryInfo dir = new DirectoryInfo(path);
FileInfo[] filecount = dir.GetFiles();
int i = filecount.Length;
//string imagename = filepath + (i + 1) + ".jpg";
string imagename = path + (i + 1) + ".jpg";
img.Save(imagename);
ms.Close();
ms.Dispose();
}
/// <summary>
/// 指定文件转换为二进制
/// </summary>
/// <param name="path">指定路径文件</param>
/// <returns></returns>
public static byte[] FileToBinary(string path)
{
//string path = Server.MapPath("../images/add.png");
FileStream fs = new FileStream(path, FileMode.Open, FileAccess.Read); //将图片以文件流的形式进行保存
BinaryReader br = new BinaryReader(fs);
byte[] imgBytesIn = br.ReadBytes((int)fs.Length); //将流读入到字节数组中
fs.Close();
fs.Dispose();
return imgBytesIn;
#region 指定图片文件二进制方式存入数据库
//StringBuilder sb=new StringBuilder();
//sb.Append("INSERT INTO [t_SignIn]([EmployeeID],[ClientID],[Img],[SignInTime]) ");
//sb.Append("VALUES(0,0,@img,GETDATE()) ");
//using (SqlConnection con = new SqlConnection(Config.SqlConnStr))
//{
// SqlCommand com = new SqlCommand(sb.ToString(),con);
// com.Parameters.Add("@img",SqlDbType.Binary).Value=imgBytesIn;
// con.Open();
// com.ExecuteNonQuery();
//};
#endregion
}
/// <summary>
/// 将二进制转换为图片输出到页面。可使用这两种方式输出
///1.<asp:Image ID="Image2" src="/WebService/WebForm1.aspx" onclick="this.src=this.src+'?'" runat="server" ToolTip="点击刷新验证码" ImageAlign="AbsMiddle" CssClass="imgYzm"></asp:Image>
///2.<img src="/WebService/WebForm1.aspx" />
/// </summary>
/// <param name="binaryVal">二进制值</param>
public static void ReadBinaryOutput(byte[] binaryVal)
{
#region 从数据库读取二进制输出图片
//byte[] img = null;
//using (SqlDataReader sdr = Config.ConnSql().GetDataReader(CommandType.Text, "SELECT img FROM dbo.t_SignIn WHERE SignInID=14", null))
//{
// if (sdr.Read())
// {
// img = (byte[])sdr.GetValue(0);
// }
//}
#endregion
System.IO.MemoryStream ms = new System.IO.MemoryStream();
http.Current.Response.Clear();
http.Current.Response.ContentType = "image/Png";
http.Current.Response.BinaryWrite(binaryVal);
ms.Close();
ms.Dispose();
http.Current.Response.End();
}
#endregion
- 图片转二进制&&二进制转图片
- 二进制转图片 图片转二进制
- C#图片转二进制、二进制转图片
- 图片转二进制
- 图片转二进制
- java图片转二进制
- 十六进制图片转二进制
- Java 将图片转二进制再将二进制转成图片
- Java 将图片转二进制再将二进制转成图片
- Java 将图片转二进制再将二进制转成图片
- c# 图片转二进制/字符串 二进制/字符串反转成图片
- Java 将图片转二进制再将二进制转成图片
- c# 图片转二进制/字符串 二进制/字符串反转成图片
- Java 将图片转二进制再将二进制转成图片
- Java 图片转二进制及生成图片
- Java 图片转二进制及生成图片
- 二进制图片
- 二进制图片
- UVa 1450 Airport 解题报告(二分+策略)
- Vector源码分析
- 内存数据类型
- Unity3d之坦克大战(二)
- How to install gcc-arm-linux-gnueabihf on Ubuntu 12.04
- 图片转二进制&&二进制转图片
- 预留
- python下pip的安装
- 移植Java web项目遇到两个问题
- xhprof安装和使用方法
- Advanced Encryption Standard
- 屏幕适配
- adb shell获取root权限
- Linux 下Gcc的使用