zoukankan      html  css  js  c++  java
  • 保存BASE64编码图片

    1.前端上传用户图片时,一些K数较小图片,头像图标等 .以bass64编码后的字符串传到服务器.

    2.服务器接收并保留到本地.

    // 页面上点击保存

    $.post('/imgupload/save',{base64:"data:image/jpeg;base64,编码略...."},function(data){

      console.info(data);

    })

    /*WEB API收到数据*/

    string imgbase64str=Request.Form.Get("base64");

    // 检查一下

    System.Text.RegularExpressions.Match m = System.Text.RegularExpressions.Regex.Match

                           (imgbase64str, "^data:image/(?<imgfmt>jpeg|png|gif);base64,");

    // 不成功不处理
    if (!m.Success)
    return false;

    // 取得格式(jpeg/png/gif)

    string imgfmt = m.Groups["imgfmt"].Value;

    // 前缀要去掉
    base64str = base64str.Replace(m.Groups[0].Value, "");

    // 用Convert类的方法转成字节
    byte[] imgbytes = Convert.FromBase64String(base64str);

    // 生成文件名,再存到文件

    string filename=String.Format("{0}.{1}",DateTime.Now.ToString("yyyyMMddHHmmss")+DateTime.Now.Millisecond.ToString(),imgfmt );

    string fullname="本地路径"+filename;

    FileStream fs = new FileStream(fullname, FileMode.Create);
    fs.Write(imgbytes, 0, imgbytes.Length);
    fs.Close();

    // 返回一个地址

    http://路径/filename;

  • 相关阅读:
    Centos安装步骤
    Charles抓包工具的使用
    Charles抓包问题
    关于Windows系统下端口被占用的问题和task命令
    Selenium3+python自动化016-Selenium Grid
    Selenium3+python自动化016-多线程
    JDBC使用案例
    JDBC基础和使用
    文件下载案例
    ServletContext
  • 原文地址:https://www.cnblogs.com/mirrortom/p/6003120.html
Copyright © 2011-2022 走看看