首页
/
每日頭條
/
科技
/
c語言字符串轉十六進制算法
c語言字符串轉十六進制算法
更新时间:2026-10-15 02:44:28

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

一、字符串轉換為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、先給手機充下電、看看是否是手機沒電的原因。2、再次按開機鍵、看看是否能正常開機。3、如果還是不行、按住Home鍵+Power鍵不放,直到出現蘋果标識、就可以開機了。
2026-10-15
可做建築材料的鹽是什麼鹽
可做建築材料的鹽是什麼鹽
1、可做建築材料的鹽是工業鹽。2、工業鹽在工業上的用途很廣,是化學工業的最基本原料之一,被稱為“化學...
2026-10-15
鋼絲胎和真空胎有什麼區别
鋼絲胎和真空胎有什麼區别
1、鋼絲胎是指輪胎的簾線裡有一層或幾層是鋼絲簾線,胎體由一層放射狀得鋼絲簾布層構成。胎冠由多層鋼絲帶固定,胎側與胎面花紋的功能獨立。這樣的輪胎承載能力比較強,安全系數高一些。真空胎是指沒有内胎的輪胎,僅用輪胎胎圈部位和輪辋進行着合密閉保存氣體高壓氣體充進輪胎内部,并非真空狀态。2、鋼絲胎主要的缺點就是輪胎側面較薄,側向變形大,導緻汽車側向穩定性稍差,制造技術要求高,成本較高。斜交胎胎側剛度較大,舒
2026-10-15
如何将QQ文件發到電腦
如何将QQ文件發到電腦
1、首先在手機上打開QQ,然後向右滑動一下,再向下找到【我的文件】打開它。2、打開我的文件之後,在最近文件的右邊點擊【多選】,一次最多可選中20個文件。3、當我們打開多選之後,在每一個文檔的前面就會出現一個小圓圈,點一下選中(需要導出的文檔)即可打上勾。在右上角或左下方處都是可以發送到電腦上的。4、這次操作是選擇左下方發送電腦的方式,點擊發送給【我的電腦】。5、在電腦上已經登錄的QQ會自動彈出接收
2026-10-15
華為5g手機有哪些
華為5g手機有哪些
1、華為手機支持5g功能有P10,MATE10兩種型号。2、華為P10:P系列是華為終端産品中定位時...
2026-10-15
Copyright 2023-2026 - www.tftnews.com All Rights Reserved