C# base64编码的字符串与图片互转
protected string ImgToBase64String(string Imagefilename)
{
try
{
Bitmap bmp = new Bitmap(Imagefilename); MemoryStream ms = new MemoryStream();
bmp.Save(ms, System.Drawing.Imaging.ImageFormat.Jpeg);
byte[] arr = new byte[ms.Length];
ms.Position = 0;
ms.Read(arr, 0, (int)ms.Length);
ms.Close();
return Convert.ToBase64String(arr);
}
catch (Exception ex)
{
return null;
}
} //threeebase64编码的字符串转为图片
protected Bitmap Base64StringToImage(string base64Code)
{
try
{
string sPath = AppDomain.CurrentDomain.SetupInformation.ApplicationBase;
if (sPath.Substring(sPath.Length - 1, 1) != "\\")
{
sPath += "\\";
}
if (!Directory.Exists(sPath + "Temp"))
{
Directory.CreateDirectory(sPath + "Temp");
} string sFileName = sPath + "Temp\\" + DateTime.Now.ToString("yyyyMMddHHmmssffff"); byte[] arr = Convert.FromBase64String(base64Code);
MemoryStream ms = new MemoryStream(arr);
Bitmap bmp = new Bitmap(ms); string f1 = sFileName + ".jpg";
string f2 = sFileName + ".bmp";
string f3 = sFileName + ".gif";
string f4 = sFileName + ".png"; bmp.Save(sFileName + ".jpg", ImageFormat.Jpeg);
bmp.Save(sFileName + ".bmp", ImageFormat.Bmp);
bmp.Save(sFileName + ".gif", ImageFormat.Gif);
bmp.Save(sFileName + ".png", ImageFormat.Png);
ms.Close(); #region 读取本地文件 FileStream fs = new FileStream(f1, FileMode.Open, FileAccess.Read);
BinaryReader br = new BinaryReader(fs);
byte[] photo = br.ReadBytes((int)fs.Length);
br.Close();
fs.Close(); Copy(photo); #endregion return bmp;
}
catch (Exception ex)
{
Response.Write(ex.Message);
return null;
}
} protected Bitmap Copy(byte[] arr)
{
try
{
string sPath = AppDomain.CurrentDomain.SetupInformation.ApplicationBase;
if (sPath.Substring(sPath.Length - 1, 1) != "\\")
{
sPath += "\\";
}
if (!Directory.Exists(sPath + "Temp\\Temp"))
{
Directory.CreateDirectory(sPath + "Temp\\Temp");
} string sFileName = sPath + "Temp\\Temp\\" + DateTime.Now.ToString("yyyyMMddHHmmssffff"); MemoryStream ms = new MemoryStream(arr);
Bitmap bmp = new Bitmap(ms); string f1 = sFileName + ".jpg";
string f2 = sFileName + ".bmp";
string f3 = sFileName + ".gif";
string f4 = sFileName + ".png"; bmp.Save(sFileName + ".jpg", ImageFormat.Jpeg);
bmp.Save(sFileName + ".bmp", ImageFormat.Bmp);
bmp.Save(sFileName + ".gif", ImageFormat.Gif);
bmp.Save(sFileName + ".png", ImageFormat.Png);
ms.Close(); return bmp;
}
catch (Exception ex)
{
Response.Write(ex.Message);
return null;
}
}
C# base64编码的字符串与图片互转的更多相关文章
- base64编码的字符串与图片相互转换
#region 图片转为base64编码的字符串---ImgToBase64String /// <summary> /// 图片转为base64编码的字符串 /// </summa ...
- C# base64编码的文本与图片互转
/// <summary> /// base64编码的文本转为图片 /// </summary> /// <param name="txtFilePath&qu ...
- 将图片转换为Base64编码的字符串
图片以文件的形式存在,可以在表单中使用. 也可以转换成Base64编码的字符串,从而在css.js中以字符串的形式使用图片.例如,在css中设置背景图片.在js中用ajax上传图片. <!DOC ...
- C# 在网页中将Base64编码的字符串显示成图片
在写一个接口,返回的json里面有图片,是Base64编码的字符串. 测试接口的时候,发现原来在html显示,是直接可以将Base64编码的字符串显示成图片的. 格式如下: <img src=d ...
- 十六进制字符串jpg图片互转
十六制字符串jpg图片互转(格式:FFD8FFE000104A******)如:FFD8FFE000104A46494600010100000100010000FFDB0043000806060706 ...
- base64编码的字符串(含有中文) 前端解码
base64编码的字符串(含有中文) 前端解码 https://xue5602.github.io/2018/12/19/atob%E8%A7%A3%E7%A0%81utf-8%E5%AD%97%E7 ...
- Base64和本地以及在线图片互转
package com.ruoyi.common.utils; import java.io.ByteArrayOutputStream; import java.io.FileInputStream ...
- Base64编码和其在图片的传输的应用
Base64 [原文链接] 目前Base64已经成为网络上常见的传输8Bit字节代码的编码方式之一.做支付系统时,系统之间的报文交互都需要使用Base64对明文进行转码,然后再进行签名或加密,之后再进 ...
- js 显示 base64编码 的二进制流 图片
Data URI scheme.Data URI scheme是在RFC2397中定义的,目的是将一些小的数据,直接嵌入到网页中,从而不用再从外部文件载入.比如上面那串字符,其实是一张小图片,将这些字 ...
随机推荐
- Spring,tk-mapper源码阅读
Mybatis的源码学习(一): 前言: 结合spring本次学习会先从spring-mybatis开始分析 在学习mybatis之前,应该要对spring的bean有所了解,本文略过 先贴一下myb ...
- Java初次见面
1.Java语言特点(运行环境JRE[操作系统,api,dll]): a.跨平台:Java自带的虚拟机很好地实现了跨平台性.Java源程序代码经过编译后生成二进制的字节码是与平台无关的,但是可被Jav ...
- FineReport——表单设计
在单元格的数据设置这一选项中,有分组,列表,汇总三个选项.分组显示,即将相同的项合并,列表则将每一行的数据逐一的展示,不会合并相同的值,每一行的是完整的一条记录,而汇总则是将数字型数据进行汇总. 分组 ...
- Mac 使用自带的Ruby 安装brew
Homebrew简称brew,OSX上的软件包管理工具,在Mac终端可以通过brew安装.更新.卸载软件. 首先要安装brew,在 mac 中使用finder 搜索 终端(terminal)打开命令行 ...
- XML 约束 (DTD和 schema)
book.DTD 如下: <?xml version="1.0" encoding="UTF-8" ?> <schema xmlns=&quo ...
- HDU-1083
Courses Time Limit: 20000/10000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total S ...
- MySQL关键字大全
转载自:https://blog.csdn.net/benxiaohai888/article/details/77803090 在使用MySQL的时候,一般尽量避免用关键字作为表名,如使用关键字做表 ...
- Understanding Optional and Compulsory Parameters
If the MVC Framework cannot find a value for a reference type parameter (such as a string or object) ...
- HP自动检查html标签是否闭合
function HtmlClose($body) { $strlen_var = strlen($body); // 不包含 html 标签 if (strpos($body, '<') == ...
- qTip2 Events详细说明
绑定事件: 这个API触发一些特殊的事件(以下详细信息),允许你给qTip分配多个时间监听,和为某一事件做出响应,例如: 我们绑定一个事件句柄,它将侦听qTip的移动的事件,和更新DIV元素里面显示的 ...