首页
/
每日頭條
/
科技
/
c語言字符串轉十六進制算法
c語言字符串轉十六進制算法
更新时间:2026-05-14 18:15:42

#編程基礎##我要上頭條#

一、字符串轉換為16進制字節數組的步驟

1、将字符串按每兩個字符拆分并插入逗号為分隔符;2、将拆分後的字符串分離為字符串數組;3、将字符串數組轉換成字節數組并檢測字符是否合法;4、将合法轉換後的字節數組輸出;

二、将16進制數字節數組轉換為字符串

1、确定是否需要在字節之間插入空格或其他特殊符号;2、将字節數據轉換為字符;3、将轉換後的字符串連接起來;4、将連接後的字符串輸出;

三、代碼

//字符串轉換為16進制字節數組 private byte[] TranslateStringToHexArray(string AsciiString) { int cnt = 0; string inputAsciiArray= ""; //1、将字符串按每兩個字符拆分并插入逗号為分隔符 for (int i = 0; i < AsciiString.Length; i ) { char temp = AsciiString[i]; if(temp!=' ') { inputAsciiArray = temp; cnt ; if (cnt >= 2) { cnt = 0; inputAsciiArray = ","; } } } //2、将拆分後的字符串分離為字符串數組 string[] bStringArray = inputAsciiArray.Split(new char[] { ',', ' ' }); cnt=0; for (int i = 0; i < bStringArray.Length; i ) { if (bStringArray[i].Trim() != "") cnt ; } byte[] bArray1=new byte[cnt]; cnt = 0; //3、将字符串數組轉換成字節數組并檢測字符是否合法 for (int i = 0; i < bStringArray.Length; i ) { if (bStringArray[i].Trim() != "") { try { bArray1[i] = Convert.ToByte(bStringArray[i].Trim(), 16); cnt ; } catch (Exception E) //發生錯誤時提示非法字符 { //string ErrMsg = " " bStringArray[i] " " E.Message; string ErrMsg = " 第 " (i*2 1).ToString() " 個字符 " bStringArray[i] " 非法 \r\n" E.ToString(); MessageBox.Show(ErrMsg, "提示"); break; } } } //4、将合法轉換後的字節數組輸出 byte[] bArray2 = new byte[cnt]; for (int i = 0; i < cnt; i ) { bArray2[i]=bArray1[i]; } return bArray2; }

//字節數組轉換為字符串 private string TranslateHexArrayToString(byte[] InputByteArray,bool AddBlankFlag) { string HexString = ""; if (AddBlankFlag == true) //确定是否需要插入特殊符号 { for (int i = 0; i < InputByteArray.Length; i ) { HexString = InputByteArray[i].ToString("X2") " "; //字節數據轉換為字符(并插入空格) } } else //字符串終字節間不插入空格 { for (int i = 0; i < InputByteArray.Length; i ) { HexString = InputByteArray[i].ToString("X2"); //字節數據轉換為字符 } } return HexString; }

c語言字符串轉十六進制算法(VS2012C)1

c語言字符串轉十六進制算法(VS2012C)2

,
Comments
Welcome to tft每日頭條 comments! Please keep conversations courteous and on-topic. To fosterproductive and respectful conversations, you may see comments from our Community Managers.
Sign up to post
Sort by
Show More Comments
推荐阅读
兒童編程入門先學什麼内容的
兒童編程入門先學什麼内容的
“編程從娃娃抓起”已經不再是一句玩笑話,在時代要求和政策助推的雙重作用下,國内中小學教育中出現編程教育相關的内容越來越多。前年,編程就已經進入了浙江省高考,去年1月16日,教育部明确表示編程成為普通高中信息技術課的必修内容;名校的自主招生中...
2026-05-14
聯想筆記本打不開充電燈不亮
聯想筆記本打不開充電燈不亮
筆記本電腦在日常生活中是非常常見的,不管是學習工作還是休閑娛樂都是必不可少的。但你是否會發現當筆記本電腦在充電時,插口會有很多的電流在跳動?筆記本電腦會充不上電?在這個快節奏的社會中我們應該怎麼解決筆記本電腦的問題?又該如何選擇和維修筆記本...
2026-05-14
阿裡雲計算認證怎麼考
阿裡雲計算認證怎麼考
新冠疫情之下,全國學生都開始在家進行網上授課學習。與此同時,教師們也在辛勤付出,他們不但要當“主播”隔空授課,還要變身“客服”在線答疑,生生長出了新能力。阿裡巴巴客戶體驗事業群(簡稱:CCO)認證平台數據顯示,2月僅釘釘端就有300萬教師參...
2026-05-14
大數據雲類型分幾種
大數據雲類型分幾種
大數據技術的戰略意義不在于掌握龐大的數據信息,而在于對這些有意義的數據進行專業化處理。大數據的核心價值是存儲和分析海量數據。大數據是指常規軟件工具無法在一定時間框架内捕獲、管理和處理的數據集。它是一種海量、高增長、多樣化的信息資産,需要一種...
2026-05-14
mac下字體格式
mac下字體格式
/System/Library/Fonts/Library/Fonts,
2026-05-14
Copyright 2023-2026 - www.tftnews.com All Rights Reserved