在调试中遇到一个问题,VS中调试命令参数中包含有%号时,实际运行起来后的启动命令行会显示为乱码,如
实际显示为:
而如果通过命令行直接调用则显示正常
实际显示为:
经过尝试发现VS调试中的命令参数在部分情况下会进行UrlDecode,如
原始字符为:%abc
UrlEncode:%25abc
当我们在VS命令参数中填写 %25abc时,任务管理器的调整命令行为:%abc
不过需要注意到的是:
原始字符为:%abc汉字
UrlEncode:%25abc%e6%b1%89%e5%ad%97
如果输入%25abc%e6%b1%89%e5%ad%97,那么显示的为%abc后跟乱码
而输入 %25abc汉字,那么显示的为%abc汉字。
搜索了一番这方面的资源,没有什么发现,在此记录一下。