UTF-8 在 C# 中使用双引号对字符串进行编码

本文关键字:字符串 编码 UTF-8 | 更新日期: 2023-09-27 18:36:56

StringBuilder request = new StringBuilder();
request.Append("<?xml version='"1.0'" encoding='"UTF-8'"?>");
byte[] msg;
string decoded;
msg=System.Text.Encoding.UTF8.GetBytes(request.ToString());
decoded = System.Text.Encoding.UTF8.GetString(msg);

解码是<?xml version='"1.0'" encoding='"UTF-8'"?>

结果有'"我的问题是我如何用引号对消息进行编码,并且在 decdo 后仍然在没有'"的情况下获得字符串如果我使用附录行,则结果也具有'r'n

UTF-8 在 C# 中使用双引号对字符串进行编码

您是否在调试器中查看字符串?如果是这样,它将显示字符串,就好像它是 C# 中的字符串文本一样。'并不真正存在。如果将字符串输出到某处,则可以进行验证。

@joey的答案是正确的 - 但由于XML支持单引号,你可以使用它 - 我觉得读起来更干净:

request.Append("<?xml version='1.0' encoding='UTF-8'"?>");