Fennel: /home/pub/open/dev/fennel/calculator/StringToHex.cpp Source File (original) (raw)
00001 00002 00003 00004 00005 00006 00007 00008 00009 00010 00011 00012 00013 00014 00015 00016 00017 00018 00019 00020 00021 00022 00023 #include "fennel/common/CommonPreamble.h" 00024 #include "fennel/calculator/StringToHex.h" 00025 00026 #include 00027 #include 00028 #include 00029 00030 FENNEL_BEGIN_CPPFILE("$Id: //open/dev/fennel/calculator/StringToHex.cpp#2 $"); 00031 00032 using namespace fennel; 00033 using namespace std; 00034 00035 00036 string 00037 stringToHex(char const * const buf) 00038 { 00039 assert(buf != NULL); 00040 uint buflen = strlen(buf); 00041 return stringToHex(buf, buflen); 00042 } 00043 00044 string 00045 stringToHex(string const & s) 00046 { 00047 return stringToHex(s.c_str()); 00048 } 00049 00050 string 00051 stringToHex(char const * const buf, uint buflen) 00052 { 00053 assert(buf != NULL); 00054 ostringstream ostr; 00055 for (uint i = 0; i < buflen; i++) { 00056 unsigned char ch = (unsigned char) buf[i]; 00057 ostr << hex << setw(2) << setfill('0') << (uint) ch; 00058 } 00059 return ostr.str(); 00060 } 00061 00062 FENNEL_END_CPPFILE("$Id: //open/dev/fennel/calculator/StringToHex.cpp#2 $"); 00063 00064