前端上传文件前预览
<img src="" id="img-change" width="200px" height="200px" id="filePath" name="filePath">
<input type="file" id="file" style="display:none;" onchange="filechange(event)" class="btn btn-secondary radius">
<script>
$("#img-change").click(function () {
$("#file").click();
})
var filechange = function (event) {
var files = event.target.files, file;
if (files && files.length > 0) {
// 获取目前上传的文件
file = files[0];// 文件大小校验的动作
if (file.size > 1024 * 1024 * 2) {
alert('图片大小不能超过 2MB!');
return false;
}
r = new FileReader(); //本地预览
r.onload = function () {
$(".img-change").attr("src", r.result);
}
r.readAsDataURL(file); //Base64格式显示预览图片
}
};
console.log($("#filePath")[0].src) //获取图片src
</script>
.net 将base64位转换为图片并保存到本地
/// <summary>
/// Base64
/// </summary>
public class Base64Helper
{
/// <summary>
/// 接收Base64编码格式的图片
/// </summary>
/// <param name="file">base64文件</param>
/// <param name="path">保存地址</param>
public static string Upload(string file,string path)
{
var suffixText = file.Split(',')[0];
var baseText = file.Split(',')[1];
//获取文件储存路径
string basePath = AppDomain.CurrentDomain.BaseDirectory; //获取当前项目所在目录
string suffix = ""; //文件的后缀名根据实际情况
if(suffixText.Contains("jpeg")) suffix = ".jpg";
else if (suffixText.Contains("png")) suffix = ".png";
else if (suffixText.Contains("gif")) suffix = ".gif";
string strPath = basePath + path + suffix;
//获取图片并保存
Base64ToImg(baseText).Save(strPath);
return path + suffix; // 返回图片地址
}
//解析base64编码获取图片
private static Bitmap Base64ToImg(string base64Code)
{
MemoryStream stream = new MemoryStream(Convert.FromBase64String(base64Code));
return new Bitmap(stream);
}
}