测试网页调用本地可执行程序(续1:解析参数中的中文编码)

学习测试网页调用本地可执行程序还遗留一个问题,即网页中调用带中文参数的命令时,本地可执行程序接收到的参数字符串里的中文都转换成了编码模式,看起来如下所示:

html 复制代码
<a href = 'TestPageCall:-a你好'>启动测试程序</a><br />


  针对.net framework和.net core找到两种解码方式,百度"C# url解码",前几页结果中的绝大部分文章都采用第一种方式解码。

1、HttpUtility

.net自带的System.Web.HttpUtility类中的UrlDecode函数支持解码url中的中文编码,其函数原型如下所示,解码效果如下:

csharp 复制代码
	public static string? UrlDecode(string? str);
	public static string? UrlDecode(string? str, Encoding e);
	public static string? UrlDecode(byte[]? bytes, int offset, int count, Encoding e);
	public static string? UrlDecode(byte[]? bytes, Encoding e);
2、Common.Utility

微信公众号"DotNet开发跳槽"中介绍了github上比较全面的C#帮助类Common.Utility(参考文献4),其中自带的HtmlHelper类支持url编码和解码(调用的System.Web.HttpContext.Current.Server .UrlEncode和UrlDecode函数编码和解码),但Common.Utility是.net framework 4编写的,无法直接在.net 6的项目中使用,.net framework版本的项目可以考虑调用(关于.net framework和.net core相互调用的说明可见参考文献5)。

百度到一网站可以做在线编码和解码,有需求的也可以试试,地址见参考文献3。

参考文献:

[1]https://blog.csdn.net/m0_55074611/article/details/131108694

[2]https://learn.microsoft.com/en-us/previous-versions/windows/internet-explorer/ie-developer/platform-apis/aa767914(v=vs.85)

[3]https://tool.chinaz.com/tools/urlencode.aspx

[4]https://github.com/laochiangx/Common.Utility

[5]https://stackoverflow.com/questions/45260792/use-net-core-with-legacy-net-framework-dlls

相关推荐
IT技术分享社区3 小时前
C#实战:使用腾讯云识别服务轻松提取火车票信息
开发语言·c#·云计算·腾讯云·共识算法
△曉風殘月〆10 小时前
WPF MVVM入门系列教程(二、依赖属性)
c#·wpf·mvvm
逐·風12 小时前
unity关于自定义渲染、内存管理、性能调优、复杂物理模拟、并行计算以及插件开发
前端·unity·c#
m0_6569747415 小时前
C#中的集合类及其使用
开发语言·c#
九鼎科技-Leo15 小时前
了解 .NET 运行时与 .NET 框架:基础概念与相互关系
windows·c#·.net
九鼎科技-Leo17 小时前
什么是 ASP.NET Core?与 ASP.NET MVC 有什么区别?
windows·后端·c#·asp.net·mvc·.net
.net开发17 小时前
WPF怎么通过RestSharp向后端发请求
前端·c#·.net·wpf
小乖兽技术18 小时前
C#与C++交互开发系列(二十):跨进程通信之共享内存(Shared Memory)
c++·c#·交互·ipc
幼儿园园霸柒柒18 小时前
第七章: 7.3求一个3*3的整型矩阵对角线元素之和
c语言·c++·算法·矩阵·c#·1024程序员节
平凡シンプル20 小时前
C# EF 使用
c#