程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> ASP.NET >> 關於ASP.NET >> 編碼,charset,亂碼,unicode,utf-8與.net簡單釋義(續)

編碼,charset,亂碼,unicode,utf-8與.net簡單釋義(續)

編輯:關於ASP.NET

上篇blog講了一下unicode等編碼的問題﹐不過並沒有涉及程序﹐所以這次就用.net來證實一下上次的這些東東。

在證明那些東東之前﹐首先把.net中關於處理encoding,二進制,16進制,byte等相關類別和方法羅列一下。

1.byte與string(那些255以內的整數)的相互轉換(各種進制之間的相互轉換)

使用System.Convert類別

string to byte

Convert.ToByte(string,base)

base:2表示二進制,8表示八進制,10表示十進制,16表示十六進制(你要輸入33,呵呵﹐異常)

這樣可以把字符串的(0--255)轉成一個byte

Convert.ToByte("01000001",2)轉成 65

Convert.ToByte("255",10)轉成255

Convert.ToByte("42",16)轉成66

同理﹐byte to string也是Convert類

Convert.ToString(byte,base)

同樣可以轉成相應的進制表示的字符串

通過這兩個方法﹐我們要進行2,8,10,16進制的相互轉換就容易了

2.char,int,long,boolean等與byte[]之間的相互轉換(這些數據在內存中的存儲狀況)

使用System.BitConverter類別

我們都知道char,int,long等基本類型是以字節形式存在內存中的﹐所以要查看其內存存儲方式則直接使用BitConverter.GetBytes()就可以了

然後再使用BitConverter.ToString(byte[])就可以以string方式查看了(如:f9-03表示2個字節)

string是由char組成的﹐只要foreach(char in string)就可以看到string的存儲方式了(實驗表明﹐string在內存中是以unicode編碼存在的,下有示例)

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved