麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 編程 > C# > 正文

C# Base64編碼函數(shù)

2020-01-24 03:46:20
字體:
供稿:網(wǎng)友
一. Base64的編碼規(guī)則 
       Base64編碼的思想是是采用64個基本的ASCII碼字符對數(shù)據(jù)進(jìn)行重新編碼。它將需要編碼的數(shù)據(jù)拆分成字節(jié)數(shù)組。以3個字節(jié)為一組。按順序排列24 位數(shù)據(jù),再把這24位數(shù)據(jù)分成4組,即每組6位。再在每組的的最高位前補(bǔ)兩個0湊足一個字節(jié)。這樣就把一個3字節(jié)為一組的數(shù)據(jù)重新編碼成了4個字節(jié)。當(dāng)所要編碼的數(shù)據(jù)的字節(jié)數(shù)不是3的整倍數(shù),也就是說在分組時最后一組不夠3個字節(jié)。這時在最后一組填充1到2個0字節(jié)。并在最后編碼完成后在結(jié)尾添加1到2個 “=”。

例:將對ABC進(jìn)行BASE64編碼:
1、首先取ABC對應(yīng)的ASCII碼值。A(65)B(66)C(67);
2、再取二進(jìn)制值A(chǔ)(01000001)B(01000010)C(01000011);
3、然后把這三個字節(jié)的二進(jìn)制碼接起來(010000010100001001000011);
4、 再以6位為單位分成4個數(shù)據(jù)塊,并在最高位填充兩個0后形成4個字節(jié)的編碼后的值,(00010000)(00010100)(00001001)(00000011),其中藍(lán)色部分為真實(shí)數(shù)據(jù);
5、再把這四個字節(jié)數(shù)據(jù)轉(zhuǎn)化成10進(jìn)制數(shù)得(16)(20)(9)(3);
6、最后根據(jù)BASE64給出的64個基本字符表,查出對應(yīng)的ASCII碼字符(Q)(U)(J)(D),這里的值實(shí)際就是數(shù)據(jù)在字符表中的索引。

注:BASE64字符表:ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/

二.解碼規(guī)則
解碼過程就是把4個字節(jié)再還原成3個字節(jié)再根據(jù)不同的數(shù)據(jù)形式把字節(jié)數(shù)組重新整理成數(shù)據(jù)。

三. C#中的實(shí)現(xiàn)
復(fù)制代碼 代碼如下:

byte[] bytes = Encoding.Default.GetBytes("helloworld");
string str = Convert.ToBase64String(bytes);
Console.WriteLine(str);
Console.ReadLine();
//base 64 decode
bytes = Convert.FromBase64String(str);
Console.WriteLine(Encoding.Default.GetString(bytes));
Console.ReadLine();
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 久久精品视频一区二区 | 最近高清无吗免费看 | 欧美日韩大片在线观看 | 毛片一级网站 | 欧美一级α | 成年人福利视频 | 天堂成人国产精品一区 | xnxx 美女19 | 黄色av网站在线观看 | 日本中文字幕久久 | 国产精品成人免费一区久久羞羞 | 国产精品av久久久久久久久久 | 黄色网战入口 | 99re66热这里只有精品8 | 免费观看一级黄色片 | h视频免费观看 | 日本中文不卡视频 | 男女无套免费视频 | 亚洲视频在线视频 | 中文字幕在线一 | 国产羞羞视频在线观看免费应用 | 久久精品国产久精国产 | av手机免费在线观看 | 性大片1000免费看 | 亚洲电影免费观看国语版 | 午夜精品久久久久久久久久久久久蜜桃 | 国产免费黄网 | 国外成人在线视频 | 亚洲第五色综合网 | 久久成人黄色 | 一级黄色毛片免费 | 国产成年人在线观看 | 日本免费一区二区三区四区 | 操你啦免费视频 | 亚洲国产成人一区 | 一级毛片免费大片 | 视频国产一区二区 | 美女亚洲| 毛片成人网 | 成人做爰高潮片免费视频韩国 | 午夜啪视频 |