#include "stdafx.h"
#include "./stringchang.h"
cstringchang::cstringchang(void)
cstringchang::~cstringchang(void)
// 將字串轉換為16進製制,倆個字元間插入了乙個空格
int cstringchang::string2hex(cstring str, cbytearray& senddata)
i++;
if (i >= len)
break;
lstr = str[i];
if ((hexdata = converthexchar(hstr)) == -1)
if ((lowhexdata = converthexchar(lstr)) == -1) //再將低字元轉換為16進製制字元
if ((hexdata ==16) || (lowhexdata == 16))
break; //如果這倆個字元中任意乙個大於16則跳出
else
hexdata = hexdata*16 + lowhexdata; //否則把倆個字元疊加
i++;
senddata[hexdatalen] = (char)hexdata; //儲存到要傳送的緩衝區中
hexdatalen++;
}senddata.setsize(hexdatalen);
return hexdatalen;
}// 將乙個字元轉換為相應的十六進製制
char cstringchang::converthexchar(char ch)
//可列印字串轉換為位元組資料
// 如:"c8329bfd0e01" -->
// 輸入: psrc 源字串
// 輸出: pdst 位元組資料
// 返回: 位元組資料長度
int cstringchang::string2bytes(const char* psrc, int nsrclength, unsigned char* pdst)
else
else
}psrc++;
// 輸出低4位
if ((*psrc>='0') && (*psrc<='9'))
else
else
}psrc++;
pdst++;
}return (nsrclength)/2;
}// 兩個位元組高地位轉換
unsigned short cstringchang::lowhigh(unsigned short* pres)
// 位元組資料轉換為可列印字串
// 如: --> "c8329bfd0e01"
// 輸入: psrc - 源資料指標
// nsrclength - 源資料長度
// 輸出: pdst - 目標字串指標
// 返回: 目標字串長度
int cstringchang::bytes2string(const unsigned char* psrc, int nsrclength, char* pdst)
// 輸出字串加個結束符
*pdst = '/0';
// 返回目標字串長度
return (nsrclength * 2);
}
MFC中各種字元轉換
本文主要概括了vs2013的mfc中,各種字元轉換 1.char 轉int,用函式atoi chartemp 10 int int atoi temp 2.int轉char,直接強制轉換 int int 0 char char int 3.cstring轉byte bytebyte 16 cstri...
MFC中的字元轉換
字元轉換 1.cstring向char型別轉換 cstring str hello string st string cstringa str int len st.length char ch char malloc len 動態申請char 大小的空間 for int i 0 i ch len ...
MFC日期字串轉換
一 將字串2011 08 1800 00 00轉換為字串2011 8 18,通過以下的函式 cstring datadeletezero cstring data cstring strmonth,strday,stryear int year 0,month 0,day 0 year atoi d...