我有一个像Feel
这样的字符串,我希望将其解码为ascii表示形式 - feel
。
C#中有没有这样的库,或者我必须手动完成它?
答案 0 :(得分:3)
要解码字符串,请使用WebUtility.HtmlDecode。
以下是一个示例LINQPad示例:
void Main()
{
string s = "Feel";
string decoded = WebUtility.HtmlDecode(s);
decoded.Dump();
}
输出:
Feel
注意:您在问题中提供的字符串中缺少分号。没有最后的分号,输出将是:
Feel
答案 1 :(得分:1)
您可以使用以下代码,这是一个控制台示例:
using System;
using System.Text;
using System.Text.RegularExpressions;
namespace ConsoleApplication
{
class Program
{
public static String ReplaceASCIICodesWithUTF(String target)
{
Regex codeSequence = new Regex(@"&#[0-9]{1,3};");
MatchCollection matches = codeSequence.Matches(target);
StringBuilder resultStringBuilder = new StringBuilder(target);
foreach (Match match in matches)
{
String matchedCodeExpression = match.Value;
String matchedCode = matchedCodeExpression.Substring(2, matchedCodeExpression.Length - 3);
Byte resultCode = Byte.Parse(matchedCode);
resultStringBuilder.Replace(matchedCodeExpression, ((Char)resultCode).ToString());
}
return resultStringBuilder.ToString();
}
static void Main(string[] args)
{
String rawData = "Feel";
Console.WriteLine(ReplaceASCIICodesWithUTF(rawData));
}
}
}
答案 2 :(得分:0)
解码:
然后,例如,
GetBytes/GetString
(对已解码的字符串进行getbytes,然后从这些字节中获取字符串)