亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > C# > 正文

基于C#開發中的那些編碼問題(詳談)

2019-10-29 21:07:23
字體:
來源:轉載
供稿:網友

最近一直在搞各種編碼問題,略有心得,與大家分享一番。

System.Text提供了Encoding的抽象類,這個類提供字符串編碼的方法。常用的編碼方式主要有ASCII,Unicode,UTF8(Unicode編碼的一種)。

Unicode有四種編碼格式,UTF-8, UTF-16,UTF-32,UTF-7。

字符編碼類,ASCIIEncoding ,UTF7Encoding,UnicodeEncoding,UTF32Encoding。

下面對ASCII和Unicode編碼進行對比,廢話不說,先上代碼:

這是ASCII編碼、解碼。

static void Main(string[] args)  {   string temp = "Hello World!";   Console.WriteLine("Original String:{0}", temp);      byte[] tempBytes = System.Text.Encoding.ASCII.GetBytes(temp);   Console.WriteLine("Bytes Array:{0}", BitConverter.ToString(tempBytes));   BigInteger integer = new BigInteger(tempBytes);   Console.WriteLine("BigInteger:{0}", integer);   string res = System.Text.Encoding.ASCII.GetString(tempBytes);   Console.WriteLine("Convert Back String:{0}", res);   Console.ReadKey();  }

運行結果如下:

Original String:Hello World!Bytes Array:48-65-6C-6C-6F-20-57-6F-72-6C-64-21BigInteger:10334410032597741434076685640Convert Back String:Hello World!

很正常,對吧?但是,如果輸入的字符串是中文(或者其他非ASCII表中的字符),情況會怎么樣呢?

改變上面的程序代碼

string temp = "你好,世界!";

運行結果如下:

Original String:你好,世界!Bytes Array:3F-3F-3F-3F-3F-3FBigInteger:69540876599103Convert Back String:??????

如果把編碼格式換成UTF8,依然重復上面的測試過程。

static void Main(string[] args)  {   string temp = "你好,世界!";   Console.WriteLine("Original String:{0}", temp);      byte[] tempBytes = System.Text.Encoding.UTF8.GetBytes(temp);   Console.WriteLine("Bytes Array:{0}", BitConverter.ToString(tempBytes));   BigInteger integer = new BigInteger(tempBytes);   Console.WriteLine("BigInteger:{0}", integer);   string res = System.Text.Encoding.UTF8.GetString(tempBytes);   Console.WriteLine("Convert Back String:{0}", res);   Console.ReadKey();  }

運行結果如下:

Original String:你好,世界!Bytes Array:E4-BD-A0-E5-A5-BD-EF-BC-8C-E4-B8-96-E7-95-8C-EF-BC-81BigInteger:-10998968812899434720462615123889939386679836Convert Back String:你好,世界!
Original String:Hello World!Bytes Array:48-65-6C-6C-6F-20-57-6F-72-6C-64-21BigInteger:10334410032597741434076685640Convert Back String:Hello World!

通過對比,我們發現除了兼容中文和其他語言外,似乎沒有太大區別。如果把編碼集換成Unicode,中英文字符編碼的不同就會很容易看出來了。

Original String:Hello World!Bytes Array:48-00-65-00-6C-00-6C-00-6F-00-20-00-57-00-6F-00-72-00-6C-00-64-00-21-00BigInteger:3160918205608148134863399242437668999277801104545742920Convert Back String:Hello World!
Original String:你好,世界!Bytes Array:60-4F-7D-59-0C-FF-16-4E-4C-75-01-FFBigInteger:-307722159543719876182061216Convert Back String:你好,世界!

如果不考慮其他情況。通過對比結果,我們發現:

1、ASCII只能處理英文和英文符號,具體請參考ASCII字符表

2、Unicode可以處理全球所有語言符號

3、Unicode處理英文時,會在每個字節后面加一個字節0x00,比ASCII多出一倍的長度;處理中文時,編碼較短。

4、UTF8處理中文時比Unicode編碼長,處理英文時與ASCII一樣。

結論,由于現在存儲介質越來越不值錢,在處理有非英文字符時,編碼格式應該選擇Unicode(或其子集UTF8等的任意一種編碼格式),只有在確定程序只會處理英文的時候,才能選擇ASCII編碼。

以上這篇基于C#開發中的那些編碼問題(詳談)就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持VEVB武林網。


注:相關教程知識閱讀請移步到c#教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
91在线观看免费高清完整版在线观看| 国产在线观看不卡| 中文字幕亚洲专区| 亚洲一区二区三区xxx视频| 久久免费国产精品1| 欧美日韩在线免费| 亚洲欧美日韩精品久久| 久久亚洲精品国产亚洲老地址| 久久精品91久久香蕉加勒比| 成人a级免费视频| 2019中文字幕在线观看| 尤物精品国产第一福利三区| 日韩av电影手机在线| 久久97久久97精品免视看| 久久精视频免费在线久久完整在线看| 亚洲第一网中文字幕| 欧美日韩性视频在线| 日韩av在线资源| 精品亚洲一区二区三区四区五区| 国产一区av在线| 精品久久久久久亚洲精品| 亚洲激情 国产| 色妞色视频一区二区三区四区| 亚洲国产成人一区| 国产精品视频精品| 欧美日韩在线视频观看| 精品久久久91| 亚洲一区二区三区视频| 亚洲视频第一页| 清纯唯美日韩制服另类| 亚洲欧洲在线视频| 亚洲黄色在线观看| 2023亚洲男人天堂| 欧美成人一区在线| 欧美精品videossex88| 91地址最新发布| 亚洲人在线视频| 久久久在线免费观看| 亚洲色图激情小说| 国产精品一区电影| 狠狠操狠狠色综合网| 亚洲片在线资源| www.亚洲天堂| 亚洲石原莉奈一区二区在线观看| 欧美电影免费观看电视剧大全| xxav国产精品美女主播| 中文字幕亚洲欧美日韩2019| 黄色精品在线看| 亚洲精品久久久久久久久| 欧美激情一二区| 热99精品里视频精品| 国产日韩欧美一二三区| 欧美成人国产va精品日本一级| 国产精品www网站| 中文欧美日本在线资源| 日产精品99久久久久久| 国产成人啪精品视频免费网| 成人免费观看49www在线观看| 81精品国产乱码久久久久久| 上原亚衣av一区二区三区| 中文字幕国产精品| 日本三级韩国三级久久| 久久久免费电影| 91精品国产自产在线| 久久久亚洲网站| 国产欧美在线播放| 国产91久久婷婷一区二区| 91在线观看免费高清完整版在线观看| 欧美性一区二区三区| 日本精品久久中文字幕佐佐木| 亚洲无亚洲人成网站77777| 91手机视频在线观看| 亚洲女人被黑人巨大进入| 亚洲一区二区三区四区视频| 欧美亚洲国产另类| 亚洲欧洲在线看| 国产精品白丝av嫩草影院| 久久久www成人免费精品张筱雨| 国产精品一区二区三| 欧美一级成年大片在线观看| 日本道色综合久久影院| 伊人久久久久久久久久久| 亚洲成人黄色在线观看| 91精品视频专区| 欧美性猛交xxxx免费看久久久| 91精品国产综合久久久久久久久| 亚洲影院污污.| 美女黄色丝袜一区| 色哟哟亚洲精品一区二区| 欧美老女人性生活| 欧美精品videosex牲欧美| 久久精品亚洲热| 亚洲在线www| 久久99精品视频一区97| 国产一区玩具在线观看| 亚洲精品日产aⅴ| 久久久免费av| 久久久久久久久久av| 黄网站色欧美视频| 国产成人精品午夜| 一区二区三区无码高清视频| 日韩中文第一页| 久久免费少妇高潮久久精品99| 国产精品久久久久久久久久久久久| 亲爱的老师9免费观看全集电视剧| 亚洲欧美自拍一区| 国产精品成人观看视频国产奇米| 97在线观看视频| 国产精品一区二区三区久久| 成人欧美一区二区三区在线| 欧美激情视频播放| 亚洲欧美另类自拍| 久久国产精品影视| 国产成人在线一区| 成人免费网视频| www.日韩.com| 亚洲综合色激情五月| 国产婷婷97碰碰久久人人蜜臀| 久久久久久久久电影| 欧美精品中文字幕一区| 国产成人一区二区三区小说| 久久久噜久噜久久综合| 亚洲国产小视频| 国产成人拍精品视频午夜网站| 国产日韩欧美黄色| 亚洲图片欧美午夜| 国产精品扒开腿做爽爽爽的视频| 国内伊人久久久久久网站视频| 欧美激情a∨在线视频播放| 国产亚洲欧美视频| 在线观看视频亚洲| 欧美日韩在线第一页| 国产亚洲一区二区在线| 亚洲free嫩bbb| 黄色精品在线看| 欧美激情三级免费| 国外成人在线直播| 欧美大人香蕉在线| 国产精品免费一区二区三区都可以| 亚洲缚视频在线观看| 国产精品99免视看9| 亚洲欧美国产精品专区久久| 日韩亚洲国产中文字幕| 久久综合免费视频| 国产精品福利在线| 国产欧美欧洲在线观看| 久久久精品亚洲| 伊人激情综合网| 国产日产久久高清欧美一区| 国产精品av免费在线观看| 欧美日韩在线视频观看| 亚洲国产精品va在看黑人| 国产午夜一区二区| 亚洲精品乱码久久久久久按摩观| 操91在线视频| 亚洲第一免费播放区| 成人亚洲综合色就1024| 亚洲欧美在线播放| 亚洲精品第一国产综合精品| 2018中文字幕一区二区三区| 国产免费一区二区三区在线观看| 欧美成人一区在线| y97精品国产97久久久久久| 久久在线观看视频|