C 數字 16進製制字串和位元組之間互轉

2021-08-21 04:41:47 字數 1199 閱讀 7044

1

、數字和位元組之間互轉

int num=12345

;byte bytes=bitconverter.getbytes(num);//

將int32轉換為位元組陣列

num=bitconverter.toint32(bytes,0);//

將位元組陣列內容再轉成int32型別

2、將字串轉為16進製制字元,允許中文

private

string stringtohexstring(string

s, encoding encode)

return

result;

}如:///

注意,乙個中文轉為utf-8佔三個位元組,英文佔乙個位元組

system.console.writeline(stringtohexstring("

中華人民共和國",

system.text.encoding.utf8));

或使用bitconverter.tostring(encoding.utf8.getbytes(

"中華人民共和國"))

返回結果為xx-xx-xx

然後再去掉"-

"3、將16進製制字串轉為字串

private

string hexstringtostring(string

hs, encoding encode)

//按照指定編碼將位元組陣列變為字串

return

encode.getstring(b);

}如:string hexstring= stringtohexstring("

中華人民共和國

", system.text.encoding.utf8);

string content=hexstringtostring(hexstring, system.text.encoding.utf8)

4、將byte轉為16進製制字串

public

static

string bytetohexstr(byte

bytes)

}return

returnstr;

}5、將16進製制的字串轉為byte

private

static

byte strtotohexbyte(string

hexstring)

C 數字 16進製制字串和位元組之間互轉

乙個位元組包含8個二進位制位,乙個十六進製制可表示4個二進位制位,所以,乙個位元組可以由2個十六進製制表示 總結如下 1 乙個byte 對應兩位十六進製制位,而不是八位 32位二進位制位 2 轉化為十六進製制之後,不足兩位的,高位要補零。8位十六進製制數佔多少位元組 比如0x12345678這是多少...

字串轉16進製制數字

網上關於字串轉數字的資料比較散亂,說什麼的都有,為了方便自己記憶在這裡記錄一下。標準c方法 char strhex 0xff long lvalue strtol strhex,null,16 類似的還有strtod 將字串轉換成浮點數 strtoul 將字串轉換成無符號長整型數 如果不要求必須轉為...

16進製制字串轉換為位元組

最近在專案中遇到乙個小問題,記錄下來以備後用。語句 string str1 2a byte b1 convert.tobyte strmd51 錯誤資訊 輸入字串的格式不正確。解決方式 byte b1 convert.tobyte strmd51,16 函式解釋 摘要 將指定基數的數字的 syste...