超过16位的字符串装16进制

 

在编写程序时遇到一个问题,需要把一个19为的字符串转换为16进制。不想使用分段转换,想一次性的全部转换。

C#中支持9种整型:sbyte,byte,short,ushort,int,uint,long,ulong和char。

  Sbyte:代表有符号的8位整数,数值范围从-128 ~ 127

  Byte:代表无符号的8位整数,数值范围从0~255

  Short:代表有符号的16位整数,范围从-32768 ~ 32767

  ushort:代表有符号的16位整数,范围从0 到 65,535

  Int:代表有符号的32位整数,范围从-2147483648 ~ 2147483648

  uint:代表无符号的32位整数,范围从0 ~ 4294967295

  Long:代表有符号的64位整数,范围从-9223372036854775808 ~ 9223372036854775808

  Ulong:代表无符号的64位整数,范围从0 ~ 18446744073709551615。

  char:代表无符号的16位整数,数值范围从0~65535。 Char类型的可能值对应于统一字符编码标准(Unicode)的字符集。

  解决办法:首先将字符床转为ulong形式。列 string s="9831928491284392134";

                      ulong t = ulong.Parse(s);  //把字符串转为无符号整数

                      s =t.ToString("x");  //转换为16进制。

将16进制的加密文本字符串转换为10进制 列:

                      ulong g = System.Convert.ToUInt64(s,16);  //将16进制字符串转为ulong类型 ,如果转为long类型会出现符号。

 

  

posted @ 2019-04-12 13:08  风雨踏梦行  阅读(541)  评论(0编辑  收藏  举报