C#下ASCII码转字符串

来源:互联网 发布:怎么破解apk软件 编辑:程序博客网 时间:2024/06/05 15:14
typedef vector<string> StrVector;void ASCII2String(const char * sz, StrVector& v1){int val = 0;string str;const char * p = sz;while (*p){str = "";val = (int)*p;val &= 0x000000ff;while (val){switch (val%16){case 0xF:str = "F"+str;break;case 0xE:str = "E"+str;break;case 0xD:str = "D"+str;break;case 0xC:str = "C"+str;break;case 0xB:str = "B"+str;break;case 0xA:str = "A"+str;break;case 0x9:str = "9"+str;break;case 0x8:str = "8"+str;break;case 0x7:str = "7"+str;break;case 0x6:str = "6"+str;break;case 0x5:str = "5"+str;break;case 0x4:str = "4"+str;break;case 0x3:str = "3"+str;break;case 0x2:str = "2"+str;break;case 0x1:str = "1"+str;break;case 0x0:str = "0"+str;break;}val = val / 16; }str = "0x"+str;v1.push_back(str);p++;}}void Output(const char * sz, StrVector& v1){fstream fouts;fouts.open("d:\\dev\\1.txt", fstream::out|fstream::app);if (!fouts.bad()){fouts<<sz<<"\n";for(StrVector::iterator it = v1.begin(); it != v1.end(); it++){fouts<<*it<<", ";}fouts<<"\n";}}int main( void ){ StrVector v1;char sz[255] = {0};sprintf(sz, "%s", "香港");ASCII2String(sz, v1);for(StrVector::iterator it = v1.begin(); it != v1.end(); it++){cout<<*it<<", ";}cout<<endl;Output(sz, v1);memset(sz, 0, sizeof(sz));v1.clear();sprintf(sz, "%s", "香港列表");ASCII2String(sz, v1);for(StrVector::iterator it = v1.begin(); it != v1.end(); it++){cout<<*it<<", ";}cout<<endl;Output(sz, v1);return 0;}


原创粉丝点击