• Jmeter 处理Unicode编码转为中文


    转:https://www.cnblogs.com/qianjinyan/p/9104942.html

     问题:如上图,获取购物车信息,显示unicode,为了识别成中文,用BeanShell PostProcessor将响应报文中Unicode编码直接转中文

    beanshell代码如下:

    String s=new String(prev.getResponseData(),"UTF-8");
    char aChar;
    int len= s.length();
    StringBuffer outBuffer=new StringBuffer(len);
    for(int x =0; x <len;){
    aChar= s.charAt(x++);
    if(aChar=='\'){
    aChar= s.charAt(x++);
    if(aChar=='u'){
    int value =0;
    for(int i=0;i<4;i++){
    aChar= s.charAt(x++);
    switch(aChar){
    case'0':
    case'1':
    case'2':
    case'3':
    case'4':
    case'5':
    case'6':
    case'7':
    case'8':
    case'9':
    value=(value <<4)+aChar-'0';
    break;
    case'a':
    case'b':
    case'c':
    case'd':
    case'e':
    case'f':
    value=(value <<4)+10+aChar-'a';
    break;
    case'A':
    case'B':
    case'C':
    case'D':
    case'E':
    case'F':
    value=(value <<4)+10+aChar-'A';
    break;
    default:
    throw new IllegalArgumentException(
    "Malformed \uxxxx encoding.");}}
    outBuffer.append((char) value);}else{
    if(aChar=='t')
    aChar=' ';
    else if(aChar=='r')
    aChar=' ';
    else if(aChar=='n')
    aChar=' ';
    else if(aChar=='f')
    aChar='f';
    outBuffer.append(aChar);}}else
    outBuffer.append(aChar);}
    prev.setResponseData(outBuffer.toString());

    加如beanshell之后,操作结果如下:


    一切技术都是为业务服务,脱离业务的技术一文不值!

  • 相关阅读:
    A good habit is half done
    mysql 练习题
    管理的实践
    mysql 表关联时执行顺序
    python 实现短信轰炸
    python django码云第三方登录
    mysql事务的隔离级别
    微服务
    什么是git
    如何使用Hexo创建博客
  • 原文地址:https://www.cnblogs.com/bubutianshu/p/14474261.html
Copyright © 2020-2023  润新知