在 JavaScript 中:
encodeURIComponent("©√") == "%C2%A9%E2%88%9A"
C# 应用程序是否有等价物?为了转义我使用的 HTML 字符:
txtOut.Text = Regex.Replace(txtIn.Text, @"[\u0080-\uFFFF]",
m => @"&#" + ((int)m.Value[0]).ToString() + ";");
但我不确定如何将匹配转换为 JS 使用的正确十六进制格式。例如这段代码:
txtOut.Text = Regex.Replace(txtIn.Text, @"[\u0080-\uFFFF]",
m => @"%" + String.Format("{0:x}", ((int)m.Value[0])));
返回 " %a9%221a"
for"©√"
而不是"%C2%A9%E2%88%9A"
。看起来我需要将字符串拆分为字节或其他内容。
编辑:这是一个Windows应用程序中,唯一可用的项目System.Web
有:AspNetHostingPermission
,AspNetHostingPermissionAttribute
,和AspNetHostingPermissionLevel
。