gpt4 book ai didi

asp.net - 如何处理ASP.NET的HyperLink.NavigateUrl中的特殊字符?

转载 作者:行者123 更新时间:2023-12-02 18:39:16 25 4
gpt4 key购买 nike

我目前无法弄清楚如何处理要(动态)传递到 HyperLink 控件的 NavigateUrl 属性的文件路径。

假设我正在尝试引用 C: 根目录下名为 jäynä.txt 的文件。
"file:///C:/jäynä.txt" 结果传递给 file:///C:/jäynä.txt 的链接,就像这样HttpUtility.UrlPathEncode("file:///C:/jäynä.txt")

ä** 替换为 **%E4,得到字符串 "file:///C :/j%E4yn%E4.txt",确实提供了 file:///C:/jäynä.txt 的工作链接,但我一直找不到方法进行替换而不自己定义它。例如,Replace("ä", "%E4")

有没有办法自动处理文件路径字符串,以便超链接能够正确显示它,而无需手动列出要替换字符串中的字符?

附加说明:
可能有一种方法可以通过指定呈现页面的字符编码来解决此问题,因为调试显示 HyperLink 至少保存了字符串 "file:///C:/jäynä.txt" 未更改,但在渲染时以某种方式破坏了它。
然而,这似乎只是渲染 NavigateUrl 时的情况,因为其他组件以及 HyperLinkText 属性都非常强大使角色 ä 保持不变。

最佳答案

超链接的 NavigateUrl 属性将对 URL 中的 unicode 字符进行编码。

相反,您可以像这样设置超链接的 href 属性:

hyperlink1.Attribute("href") = "file:///C:/jäynä.txt"

关于asp.net - 如何处理ASP.NET的HyperLink.NavigateUrl中的特殊字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/626254/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com