LoadRunner函数详解之lr_convert_string_encoding

来源:互联网 发布:public cms官网 编辑:程序博客网 时间:2024/05/22 10:53

定义:字符编码System locale, Unicode, UTF-8之间的相互转换,转换结果保存在“结果字符串”中,该“结果字符串”包含NULL–字符串结束符
函数形式:
lr_convert_string_encoding(const char *sourceString, const char *fromEncoding, const char *toEncoding, const char *paramName);
参数详解:
这里写图片描述
基本信息:
结果字符串包含的“可打印字符”能在VuGen和日志信息中以实际字符显示,“不可打印字符”以16进制显示,例如:

rc = lr_convert_string_encoding("A", NULL, LR_ENC_UTF8, "stringInUnicode"); 结果字符串显示为A\x00, 而不是\x41\x00, 因为A是可打印字符

fromEncoding 和 toEncoding可能的取值:
这里写图片描述
示例1:使用 lr_convert_string_encoding 将字符串”Hello world”从System locale编码转换为Unicode编码。

Action() { int rc = 0; unsigned long converted_buffer_size_unicode = 0; char *converted_buffer_unicode = NULL; rc = lr_convert_string_encoding("Hello world",     LR_ENC_SYSTEM_LOCALE,     LR_ENC_UNICODE,     "stringInUnicode"); if(rc < 0) {     lr_output_message("字符编码转换失败"); } return 0; } 结果输出:Starting action Action. Action.c(7): Notify: Saving Parameter "stringInUnicode = H\x00e\x00l\x00l\x00o\x00 \x00w\x00o\x00r\x00l\x00d\x00\x00\x00" Ending action Action.

注:目前使用最广泛的西文字符集及其编码是 ascii 字符集和 ASCII 码( ASCII 是 American Standard Code for Information Interchange 的缩写),它同时也被国际标准化组织( International Organization for Standardization, iso )批准为国际标准。 基本的 ASCII 字符集共有 128 个字符,其中有 96 个可打印字符,包括常用的字母、数字、标点符号等,另外还有 32 个控制字符。标准 ASCII 码使用 7 个二进位对字符进行编码,对应的 ISO 标准为 ISO646 标准

0 0
原创粉丝点击