#include "D:\testfiles\encodeString.h"
char encodedStr1[1024];
encodeString("8iIfO2MuiPRgQ+CilthsH5jwi1M9Pdck2V0LyzBGogZhPlympjcgox5sPpSDD/Fx","encodedStr1");
lr_output_message(lr_eval_string("encodedStr1"));
//-----------------------头文件------------------------------------------
// Function: encodeString
// Inputs: original = The original un-encoded string
// output_param_name = Parameter name the encoded string will be saved to.
// Outputs: <none>
// Description: URL Encodes a string.
//-----------------------------------------------------------------------
void encodeString(const char * original,char * output_param_name)
{
int counter, out_counter;
char * encodedStr = (char *)malloc((strlen(original)*2)+1); // will make sure there is enough room for new string
char buffer[4]; // buffer to hold hexidecimal version of the character
for(counter=0,out_counter=0;counter<(int)strlen(original);counter++,out_counter++)
{
if(isalnum(original[counter]))
encodedStr[out_counter]=original[counter];
else
{
sprintf(buffer, "%%%X", original[counter]); //prints %Hex_Value (%20) of the original character
//grabs first three characters of the buffer which is the hex value we want
encodedStr[out_counter++] = buffer[0];
encodedStr[out_counter++] = buffer[1];
encodedStr[out_counter] = buffer[2];
}
}
encodedStr[out_counter]='\0'; //end the string
lr_save_string(encodedStr,output_param_name); //save string into parameter
free(encodedStr); //free memory
}
EncodeSting.h 下载地址: https://dl.dropbox.com/u/71581087/MD5/encodeString.h