C#字符串Base64編解碼
首先講一下什么是Base64編碼
所謂Base64就是一種基於64個可打印字符來表示二進制數據的方法。
Base64編碼是從二進制到字符的過程,常用於在網絡上傳輸不可見字符(不能被打印出來的字符)。
標准的Base64編碼包含字符有:大小寫英文字母(共52個),數字(共10個),+和/(2個)一共64個基礎字符,所以就稱作 Base64 編碼。
正則表達式匹配:[A-Za-z0-9+/]
主要應用場合:
電子郵件的附件一般是 base64 編碼,因為附件往往有不可見字符。
較老的純文本協議 SMTP ,這些文本偶爾傳輸一個文件時,需要用 base64將二進制編碼為可打印字符。
xml 中如果嵌入另外一個 xml 文件,直接嵌入,往往 xml 標簽就亂套了, 不容易解析,因此,需要把內嵌的 XML 格式內容先進行 Base64 編碼后在存儲在 XML 文件中。
網頁中的一些小圖片,可以直接以 base64 編碼的方式嵌入,不用再鏈接請求消耗網絡資源。
以下用C#封裝了兩個string擴展方法,支持將文本編碼為Base64和從Base64解碼返回原字符串。
using System;
using System.Text;
namespace CRApp
{
public static class Base64
{
public static string Base64Encode(this string text) // 將字符串編碼為 Base64
{
return (Convert.ToBase64String(Encoding.Default.GetBytes(text)));
}
public static string Base64_Decode(this string code) // 將 Base64 解碼還原字符串
{
return (Encoding.Default.GetString(Convert.FromBase64String(code)));
}
}
}