首页 > 其他分享 >UrlEncode 会把对象的大写转成小写

UrlEncode 会把对象的大写转成小写

时间:2022-12-14 10:36:20浏览次数:42  
标签:UrlEncode string 22% 大写 Add vs 小写 buf

 

 

Dictionary<string, object> pairs = new Dictionary<string, object>()
{
    { "bookId",2},
    { "virtualQuantity","10"}
};

var json = Newtonsoft.Json.JsonConvert.SerializeObject(pairs);

var sd = StortJson(json);
List<string> vs = new List<string>();
vs.Add("aqsMyu8x");
vs.Add("123AK");
vs.Add("123456");
vs.Add("1653721579");
vs.Add(sd);
vs.Sort(StringComparer.Ordinal);
//join
string strJoin = string.Join(string.Empty, vs);
//UrlEncode
var strEncode = HttpUtility.UrlEncode(strJoin);

//UrlEncode 会把对象的大写转成小写...

文档:123456123AK1653721579aqsMyu8x{"virtualQuantity":"10","bookId":2}
代码:123456123AK1653721579aqsMyu8x{"virtualQuantity":"10","bookId":2}


strEncode:123456123AK1653721579aqsMyu8x%7b%22virtualQuantity%22%3a%2210%22%2c%22bookId%22%3a2%7d

文档:     123456123AK1653721579aqsMyu8x%7B%22virtualQuantity%22%3A%2210%22%2C%22bookId%22%3A2%7D


UrlEncode这个方法要重写一下:
public static string UrlEncode(string str)
{
    str = HttpUtility.UrlEncode(str);
    byte[] buf = Encoding.ASCII.GetBytes(str);
    for (int i = 0; i < buf.Length; i++)
    {
        if (buf[i] == '%')
        {
            if (buf[i + 1] >= 'a') buf[i + 1] -= 32;
            if (buf[i + 2] >= 'a') buf[i + 2] -= 32;
            i += 2;
        }
    }
    return Encoding.ASCII.GetString(buf);
}

 

标签:UrlEncode,string,22%,大写,Add,vs,小写,buf
From: https://www.cnblogs.com/ZkbFighting/p/16981394.html

相关文章

  • 测试数字金额 转为中文大写
    测试数字金额转为中文大写DATA:money_textTYPEspell.DATA:con1(256)TYPEc,con2(128)TYPEc,con3(384)TYPEc.DATA:BEGINOFit_tab3......
  • 金额大写转换
    importjava.util.regex.Matcher;importjava.util.regex.Pattern;publicclassTestAA{privatestaticfinalPatternAMOUNT_PATTERN=Pattern.compile("^(0|[......
  • Ptoto 生成json tag 首字母大小写
    有大概两三年时间没使用proto了,最近公司项目中使用了GRPC,自然而然的再次使用了protobuf,但以前前后端有约,所有jsontag使用驼峰命名规则,这些很多年前的细节,一时间王的干净,特......
  • python 中 的 urlencode 和 urldecode
    python中的urlencode和urldecodepython将字符串转化成urlencode,或者将url编码字符串decode的方法:方法1:urlencode:urllib中的quote方法>>>fromurllibimportquo......
  • MySQL忽略大小写的注意事项
    一、背景在阿里的规范中,不允许超过2个JOIN的关联查询,故项目中需要将复杂SQL拆分二、问题目前MySQL5.7非特殊场景默认选择utf8mb4,排序选择utf8mb4_general_ci,MySQL8默认选择u......
  • 2.操作数据库(MySql中语句不区分大小写)
    操作数据库→操作数据库中的表→操作数据库中表的数据1.操作数据库1.创建数据库CREATEDATABASE[IFNOTEXISTS]westos--[]代表可选的,写不写都行2.删除数据库DRO......
  • js 金额转大写
    参考:https://www.yisu.com/zixun/353425.html //金额转为大写exportfunctionfunctiondigitUppercase(price){constfraction=["角","分"];constdigit=......
  • 使用Jexus+Mono运行.net开发的项目如何不让URL区分大小写
    最近一直再研究.net的跨平台问题,遇到的其中一个比较棘手的问题就是无论时钟Apatch还是Jexus里面,发布的站点访问的时候路径都是要区分大小写的(对于一个.net开发人员来说的确......
  • 车牌不区分大小写
    constvalidatelicensePlate=(rule,value,callback)=>{if(!value){callback(newError("请输入车牌号码"));}else{letdvalue......
  • 后端接口要求请求头的Content-Type:application/x-www-form-urlencoded
    背景使用apipost接口请求工具调试后端接口的时候,后端要求的类型是application/x-www-form-urlencoded,采用其他方式无法获取到数据,前端如何发起网络请求呢?以类型为applica......