如何将十六进制值替换为C中的原始字符串?

时间:2015-10-05 10:58:33

标签: performance-testing loadrunner

我已将以下响应代码段中的令牌值相关联:

result.sessionToken = '7AFF3BA8\x2DD913\x2D4211\x2D990E\x2D7DF3AB5687B7';    

使用web_reg_save_param函数:

web_reg_save_param(
"TOKEN",
"LB=result.sessionToken = '",
"RB=';",
"ORD=1",LAST);  

但是在稍后的请求中,我需要以下面的格式发送相关值:

7AFF3BA8-DD913-4211-990E-7DF3AB5687B7

\x2D将由-替换。

我现在正在使用下面的' C'和LR代码:

strcat(pstr1,lr_eval_string("{RToken}"));
strcat(aSeparator,"\\");

for(a=0,b=0;pstr1[a]!=NULL;a++,b++)
{
    if(pstr1[a]==aSeparator[0])
    {
        strcat(pstr2,"-");
        pstr2[b+1]=pstr1[a+4];
        a=a+5;
        b=b+2;
    }
    pstr2[b]=pstr1[a];
}   

lr_save_string(lr_eval_string(pstr2), "sessionToken");

我想要一个针对这个问题的通用和另一种方法。我不想使用web_convert_param函数,但如果有一个隐藏的技巧可以根据需要转换字符串,我想知道。

谢谢, Ritika

1 个答案:

答案 0 :(得分:0)

试试这个... lr_save_string(lr_eval_string(“{TOKEN}”),“convertedtkn”);