亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

Image和Base64互相轉換

標簽:
JavaScript

base64介绍:

Base64编码是从二进制到字符的过程,可用于在HTTP环境下传递较长的标识信息。例如,在Java Persistence系统Hibernate中,就采用了Base64来将一个较长的唯一标识符(一般为128-bit的UUID)编码为一个字符串,用作HTTP表单和HTTP GET URL中的参数。在其他应用程序中,也常常需要把二进制数据编码为适合放在URL(包括隐藏表单域)中的形式。此时,采用Base64编码具有不可读性,需要解码后才能阅读。

一个简单的功能,其代码如下。

复制代码

public string FileToBase64(string filename)
        {            string result = string.Empty;            try
            {                using (FileStream fs = new FileStream(filename,FileMode.Open,FileAccess.Read))
                {                    byte[] byteArray = new byte[fs.Length];
                    fs.Read(byteArray,0,byteArray.Length);
                    result = Convert.ToBase64String(byteArray);
                }
            }            catch
            {
                result = "";
            }            return result;
        }

复制代码

调用:

复制代码

static void Main(string[] args)
        {
            ImgAndBaseProject imgAndBase = new ImgAndBaseProject();
            System.Console.WriteLine(imgAndBase.FileToBase64(@"C:\Users\MACHENIKE\source\repos\ImgToBaseSixFour\ImgToBaseSixFour\GitHub.png"));
        }

复制代码

 

 我们在winform上把这个base64变成img放到控件上,大概就长这样吧

代码:

复制代码


public Image Base64ToImg(string base64str)
        {
            byte[] arr = Convert.FromBase64String(base64str);
            MemoryStream ms = new MemoryStream(arr);
            Bitmap bmp = new Bitmap(ms);
            return bmp;
        }

复制代码

  

 完整代码如下:

复制代码

    public partial class Form1 : Form
    {        public Form1()
        {
            InitializeComponent();
        }        public string FileToBase64(string filename)
        {            string result = string.Empty;            try
            {                using (FileStream fs = new FileStream(filename, FileMode.Open, FileAccess.Read))
                {                    byte[] byteArray = new byte[fs.Length];
                    fs.Read(byteArray, 0, byteArray.Length);
                    result = Convert.ToBase64String(byteArray);
                }
            }            catch
            {
                result = "";
            }            return result;
        }        public Image Base64ToImg(string base64str)
        {            byte[] arr = Convert.FromBase64String(base64str);
            MemoryStream ms = new MemoryStream(arr);
            Bitmap bmp = new Bitmap(ms);            return bmp;
        }        private void Form1_Load(object sender, EventArgs e)
        {            this.richTextBox1.Text = FileToBase64(@"C:\Users\MACHENIKE\source\repos\ImgToBaseSixFour\ImgToBaseSixFour\GitHub.png").Trim();
        }        private void button1_Click(object sender, EventArgs e)
        {            //MessageBox.Show(this.richTextBox1.Text);
            this.pictureBox1.Image = Base64ToImg(this.richTextBox1.Text.Trim());
        }
    }

复制代码

原文出处:https://www.cnblogs.com/ZaraNet/p/10177767.html  

點擊查看更多內容
TA 點贊

若覺得本文不錯,就分享一下吧!

評論

作者其他優質文章

正在加載中
  • 推薦
  • 評論
  • 收藏
  • 共同學習,寫下你的評論
感謝您的支持,我會繼續努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦
今天注冊有機會得

100積分直接送

付費專欄免費學

大額優惠券免費領

立即參與 放棄機會
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

舉報

0/150
提交
取消