我处在一个我有一些路径的情况下。此路径可能类似于“jadajada.com/My Site.html”。
我使用 HttpUtility.UrlEncode 对 url 进行编码,这很棒。但是,我遇到的问题是,每当我有空格时,它都会用“+”号替换它。我需要一个“-”符号。
这个方法能完成这个任务吗?如果是这样,什么样的编码等。
(是的,我知道您可以使用 string.Replace,但请暂时避免使用该解决方案;-)
最佳答案
用 "-"
替换空格并不是真正的编码,因为没有标准的解码器; "+"
是正确的。
但是,如果这仅用于显示,并且只要您的代码不依赖于此值(例如,执行期望 空格 的精确 slug 匹配strong>) 你可以在编码之前简单地做一个 .Replace("","-")
。在那种有损的情况下,您可能还想替换一些其他的、截断过长的字符串等。
一旦它有一个 -
就对其进行编码应该是一个空操作(即它不会改变)。
关于c# - HttpUtility.UrlEncode - 减号而不是加号?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5565791/