我从网址获取json格式的数据。一切都很完美,但一个小问题是,我得到的数据中有一些特殊字符,例如:
Get 50% off on Pizzas between 11am – 5pm.
–
这意味着它是' - ',但是如何在c#中对其进行解码,以便将其作为' - '。
我尝试过使用Html.decode方法,它可以很好地处理URL而不是数据。
我无法将–
替换为' - '无处不在,因为这不是一个案例,也有其他类似的人物。
答案 0 :(得分:2)
工作正常:
https://dotnetfiddle.net/H9rpLe
using System;
public class Program
{
public static void Main()
{
string data = System.Net.WebUtility.HtmlDecode("Get 50% off on Pizzas between 11am – 5pm");
Console.WriteLine(data);
}
}
输出:上午11点至下午5点在比萨饼上享受五折优惠
答案 1 :(得分:1)
我认为这与此question重复。
您可以使用HttpUtility.HtmlDecode
如果您使用的是.NET 4.0+,您还可以使用WebUtility.HtmlDecode,它不需要额外的程序集引用,因为它在System.Net命名空间中可用。
答案 2 :(得分:0)
尝试将其解码两次,因为它似乎已编码两次。第一次解码会将–
转换为–
,然后第二次解码会将其–
。
using System;
using System.Web;
public class Test
{
public static void Main()
{
string s = "Get 50% off on Pizzas between 11am – 5pm.";
Console.WriteLine(s);
string d = HttpUtility.HtmlDecode(s);
Console.WriteLine(d);
string e = HttpUtility.HtmlDecode(d);
Console.WriteLine(e);
}
}