前言
无论是什么语言在开发的过程中,总会遇到不同类型数据之间的转换。C#也不例外,不过C#已经帮我们做好了一些转换的方法。
一.常用的转换类。
Encoding
BitConverter
Convert
Marshal
namespace System
空间下的静态方法比如:int.Parse()
二.数据转换
1.byte[] => string
方法1:
string str1 = System.Text.Encoding.Default.GetString(byteArray);
方法2:
string str2 = BitConverter.ToString(byteArray);
转换后数据之间会带"-"
"31-32-33-34-35-36-37-38-39"
方法3:
string str3 = Convert.ToBase64String(byteArray);
方法4:
string str4 = HttpServerUtility.UrlTokenEncode(byteArray);
2.string => byte[]
方法1:
byte[] byteArray = System.Text.Encoding.Default.GetBytes(str);
方法2:
byte[] byteArray = new byte[str.Length];
for (int i =0;i<str.Length;i++)
{
byteArray[i] = Convert.ToByte(str[i]);
}
方法3;
byte[] byteArray = Convert.FromBase64String(str);
方法4:
byte[] byteArray = HttpServerUtility.UrlTokenDecode(str);
3.string=>int
1.Parse() method
2.Convert class
3.TryParse() method - Recommended
//1.ex
int t1 = 0;
string str = "100";
t1 = int.parse(str);
t1= Convert.ToInt32(str);
TryParse(str, out t1);
4.int=>string
int t1 =10;
string s1 = t1.ToString();
string s1 = Convert.ToString(t1);
5.uint—>byte[]
byte[] bpara =System.BitConverter.GetBytes(uint upara);
6.byte[]—>uint
uint upara= System.BitConverter.ToUint32(bpara);
7.byte—>char
system.convert.tochar(bpara);
8.char—>byte
system.convert.tobyte(cpara);
byte[]—>char[]
(1)char[] cpara= System.Text.Encoding.Default.GetChars(bpara);(1)
(2)char[] cpara=new char[bpara.length];
for(int i=0;i <bpara.length;i ++){char[i]=system.convert.tochar(bpara[i]);}
(3)char[] cpara= new ASCIIEncoding().GetChars(bpara);
char[]—>byte[]
(1)byte[] bpara= System.Text.Encoding.Default.GetBytes(cpara);
(2) byte[] bpara= new ASCIIEncoding().GetBytes(cpara);
char[]—>string
String spara=new String(cpara);
string—char[]
char[] cpara=spara.ToCharArray()
uint---->char[]
(1)uint-->byte[];
(2)byte[]-->char[];
uint—>string
(1)uint-->byte[];
(2)byte[]-->char[];
(3)char[]-->string;
byte[]—>string
(1).byte[]-->char[];
(2).char[]-->string;
(3) new ASCIIEncoding().GetString(bprar);
char[]—>uint
(1).char[]–>byte[];
(2).byte[]–>uint;
string—>byte[]
bpara= System.Text.Encoding.Default.GetBytes(sPara)
string—>uint
(1)string-->byte[];
(2)byte[]-->uint;