超过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类型会出现符号。

  

原文地址:https://www.cnblogs.com/zhaoguoying/p/10695420.html

时间: 2024-11-09 12:01:14

超过16位的字符串装16进制的相关文章

10进制正整数转4位定长的36进制字符串

题目描述: 请设计一个函数可以把10进制的正整数转换为4位定长的36进制字符串. 36进制的规则为:“0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ”; 举例说明: 1=“0001” 10=“000A” 20=“000K” 35=“000Z” 36=“0010” 100=“002S” 2000=“01JK” 这是腾讯2015校园招聘技术类研发笔试题中的一题,给出自己的答案,欢迎拍砖. solution: string convert(int x) { string re

华为笔试练习题----解析9进制,11进制的字符串为10进制的数字输出

                                                                              解析9进制,11进制的字符串为10进制的数字输出 描述: 解析9进制,11进制的字符串为10进制的数字输出,输入的字符串有效位(0v0012345678)长度不超过8位,前面的00不算做有效位.解析后以10进制的数字输出.如果解析到非法字符串则返回-1 9进制: 9进制的数的范围:0,1,2,3,4,5,6,7,8 9进制的开始为:0V或者0

4位bcd数转换为2进制数

DATA   SEGMENTBUF    DW  1234HBUF1   DW  ?    ;2进制数放到buf1内存单元DATA   ENDSCODE   SEGMENTASSUME CS:CODE,DS:DATABEGIN: MOV AX,DATA       MOV DS,AX       MOV DX,BUF       CALL DISC       MOV AH,4CH       INT 21H       DISC PROC       XOR  AX,AX       MOV 

C语言实现字符串中(10进制和16进制)转成十进制数

如何将字符串中的10进制数和16进制数提取出来,看以下代码: #include <stdio.h> typedef char TUINT8 ; typedef int TUINT32; TUINT32 Read_DecNumber(const TUINT8* str); TUINT32 Read_HexNumber(const TUINT8* str); int main(void) { int ret = Read_DecNumber("1000"); int d = R

16进制字符串转换为3进制(扩展至K进制)

[本文链接] http://www.cnblogs.com/hellogiser/p/16-to-3-or-k.html [题目] 写代码把16进制表示的串转换为3进制表示的串.例如x=”5”,则返回:”12”:又例如:x=”F”,则返回”120” [代码] C++ Code 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960

16进制字符串转36进制字符串

PHP任意进制之间转换数字base_converthttp://php.net/manual/zh/function.base-convert.php 实际测试时因为有精度留失的问题,会导致换错误.Warning由于使用内部的 "double" 或 "float" 类型,base_convert() 的操作可能会导致大数值中的精度丢失.请参见本手册的 浮点数 章节以便获得更多详细信息. $s = 'BE55D904-1F35-4838-8F8F-B27EDEA9DF

lua 转换16进制字符串为10进制数值

> print(tonumber("03FFACB", 16)) 4192971 利用tonumber函数,"16"表示"03FFACB"为16进制数.

32位浮点数转换成10进制

代码如下: void main() { BYTE s[4]; s[3]=0x44; s[2]=0x0C; s[1]=0x80; s[0]=0x00; float *pf=(float*)s; printf("10进制%g\n",*pf); }

字符串hash(类似于进制的hash)

分段字符串哈希方法 对于一串字符串 $orztrj$ ,我们有一种哈希的方法,该串哈希值为: $((((o * base + r) * base + z) * base + t) * base + r) * base + j$ 即 $o * base^5 + r * base^4 + z * base^3 + t * base^2 + r * base^1 + j * base^0$ 其中 $base$ 设成一个素数,记得取模 于是哈希数组如下: $hash[1] = o * base^0$ $