上传图片

<img src="~/Content/img/btn_1.png" class="img-responsive" id="a_pic">
<input class="btn_upimg" type="file" />

 

$(".btn_upimg").change(function () {
var $img = $(this).prev();
console.log($(this).prop('files'))
if ($(this).prop('files').length === 0) {
alert("请选择图片");
return;
}
var oFile = $(this).prop('files')[0];
if (!new RegExp("(jpg|jpeg|png)+", "gi").test(oFile.type)) {
alert("照片上传:文件类型必须是JPG、JPEG、PNG");
return;
}
var reader = new FileReader();
reader.onload = function (e) {
var base64Img = e.target.result;
//压缩前预览
console.log(base64Img)
$img.attr("src", base64Img);
$.post("/LotteryDraw/uploadImg", { img: base64Img }, function (data) {
var obj = eval('(' + data + ')')
if (obj.Error_code ==="I2001") {
$img.attr("success_src", obj.Data.img_stc);
$img.next().next().hide();
} else {
$img.next().next().show();
}
console.log(obj);

})

};
reader.readAsDataURL(oFile);
})

 

public string uploadImg(string img) {
//string imgsrc = UpImg(img);
Pacific.PoubtsShop.Common.ResultJsonInfo<imgJson> s = new PoubtsShop.Common.ResultJsonInfo<imgJson>();
imgJson imgsrc = new imgJson();
imgsrc.img_stc = UpImg(img);
s.Status = 0;

if (imgsrc.img_stc=="")
{
s.Msg = "图片上传失败!";
s.Error_code = "I4001";
}
else
{
s.Msg = "图片上传成功!";
s.Error_code = "I2001";
}
s.Data = imgsrc;

return JsonConvert.SerializeObject(s);
}

public class imgJson {
public string img_stc { get; set; }
}

/// <summary>
/// 图片上传保存
/// </summary>
/// <param name="strbase64"></param>
/// <returns></returns>
public string UpImg(string strbase64)
{
try
{
string imgType = strbase64.Split(';')[0];
imgType = imgType.Split('/')[1];
strbase64 = strbase64.Split(',')[1];
byte[] arr = Convert.FromBase64String(strbase64);
MemoryStream ms = new MemoryStream(arr);
Bitmap bmp = new Bitmap(ms);
string path = "\\upload\\img\\";
string tmpRootDir = System.Web.HttpContext.Current.Server.MapPath(System.Web.HttpContext.Current.Request.ApplicationPath.ToString());//获取程序根目录
string imageUrl = tmpRootDir + path.Replace(@"/", @"\"); //转换成绝对路径
string imageName = "";
if (imgType.ToLower() == "png")
{
imageName = DateTime.Now.ToString("yyyyMMddHHmmss_ffff", DateTimeFormatInfo.InvariantInfo) + ".png";
bmp.Save(imageUrl + imageName, ImageFormat.Png);
}
else if (imgType.ToLower() == "gif")
{
imageName = DateTime.Now.ToString("yyyyMMddHHmmss_ffff", DateTimeFormatInfo.InvariantInfo) + ".gif";
bmp.Save(imageUrl + imageName, ImageFormat.Gif);
}
else if (imgType.ToLower() == "bmp")
{
imageName = DateTime.Now.ToString("yyyyMMddHHmmss_ffff", DateTimeFormatInfo.InvariantInfo) + ".bmp";
bmp.Save(imageUrl + imageName, ImageFormat.Bmp);
}
else if (imgType.ToLower() == "jpeg")
{
imageName = DateTime.Now.ToString("yyyyMMddHHmmss_ffff", DateTimeFormatInfo.InvariantInfo) + ".jpg";
bmp.Save(imageUrl + imageName, System.Drawing.Imaging.ImageFormat.Jpeg);
}
//bmp.Save(imageUrl+"test.jpg", System.Drawing.Imaging.ImageFormat.Jpeg);
//bmp.Save("test.bmp", ImageFormat.Bmp);
//bmp.Save("test.gif", ImageFormat.Gif);

ms.Close();
return "/upload/img/" + imageName;
// Context.Response.Write("{\"status\":1,\"message\":\"" + bmp + "\"}");

}
catch (Exception e)
{
return "";
//Context.Response.Write("{\"status\":1,\"message\":\"操作错误!\"}");
}
}

 

posted @ 2018-10-31 21:38  Best丶zhaotf  阅读(266)  评论(0编辑  收藏  举报