测试网页调用本地可执行程序(续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%28v=vs.85%29 \[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

相关推荐
程序设计实验室1 小时前
Spark.NET:一个试图把 Django / Rails 式开发体验带回 .NET 世界的全栈 Web 框架。
c#
byoass2 小时前
智巢AI知识库深度解析:企业文档管理从大海捞针到精准狙击的进化之路
开发语言·网络·人工智能·安全·c#·云计算
njsgcs6 小时前
solidworks自动标注折弯4 无向图 c#
开发语言·c#·solidworks
我是唐青枫7 小时前
C#.NET ThreadLocal 深入解析:线程独享数据、性能收益与实战边界
c#·.net
JQLvopkk9 小时前
C# 工业级上位机:交互实战
开发语言·c#·交互
kingwebo'sZone9 小时前
PdfiumViewer使用权限控制期操作按钮(PdfViewer其实也可以完整兼容)
c#
张小俊_10 小时前
WPF 跨线程 UI 更新与硬编码赋值引发的 Bug 排查
c#·bug·wpf
無斜10 小时前
【CAPL实用开发】--- CAPL调用 .NET DLL
开发语言·c#·capl·canoe
puamac11 小时前
UcTabWindow 布局多tab,加载编辑器和资源管理器等自定义控件
c#·编辑器·datagridview
唐青枫11 小时前
别再把增删改查写成一锅粥!C#.NET CQRS 从原理到实战
c#·.net