您的位置:首页 > 编程语言 > C#

c# base64图片编码使用

2017-10-11 17:20 411 查看
base64图片编码C#方法

页面jQ提交

function upData() {

var url = "/file/UploadBase64";
var timestamp = Date.parse(new Date());
captureCount = timestamp / 1000;
//当前时间戳为:1403149534

var fid = document.getElementById("FID");
alert(fid);
var filename = fid.value + "_" + captureCount + ".PNG";
alert(filename);
var data = { base64Data: base64Data, filename: filename };
console.log(data);
$.ajax({
url: url,
type: "post",
data: data,
dataType: "json",
success: function (data) {
if (data.success == true) {
var obj = document.getElementById("Scan");
obj.value = data.filename;

// alert(picPath)
if (data.filename.length > 10) {
$('#pic').attr('src', '/upload/image/' + data.filename);
}
console.log(data.filename);
console.log("上传成功");
} else {
alert("上传失败");
}
},
error: function () {
console.log("上传失败");
}
});
}

后台接收方法

[HttpPost]
public JsonResult UploadBase64(string base64Data,string filename)
{
string rootPath = Server.MapPath("~/UploadPIC/images/");
var saveName = filename;
var savePath=rootPath + saveName;
byte[] arr2 = Convert.FromBase64String(base64Data);
using (MemoryStream ms2 = new MemoryStream(arr2))
{
System.Drawing.Bitmap bmp2 = new System.Drawing.Bitmap(ms2);
////只有把当前的图像复制一份,然后把旧的Dispose掉,那个文件就不被锁住了,
////这样就可以放心覆盖原始文件,否则GDI+一般性错误(A generic error occurred in GDI+)
//System.Drawing.Bitmap bmpNew = new System.Drawing.Bitmap(bmp2);
//bmp2.Dispose();
//bmp2 = null;
var ext = savePath.Substring(savePath.Length - 3).ToLower();
switch (ext)
{
case "jpg": bmp2.Save(savePath, System.Drawing.Imaging.ImageFormat.Jpeg);
break;
case "bmp": bmp2.Save(savePath, System.Drawing.Imaging.ImageFormat.Bmp);
break;
case "gif": bmp2.Save(savePath, System.Drawing.Imaging.ImageFormat.Gif);
break;
case "png": bmp2.Save(savePath, System.Drawing.Imaging.ImageFormat.Png);
break;
case "ico": bmp2.Save(savePath, System.Drawing.Imaging.ImageFormat.Icon);
break;

}
bmp2.Dispose();
}
var success = System.IO.File.Exists(savePath);
var result = new
{
success=success,
filename = saveName
};
return Json(result );
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: