【问题标题】:How get JSON string from XML string using C#?如何使用 C# 从 XML 字符串中获取 JSON 字符串?
【发布时间】:2017-02-22 10:48:07
【问题描述】:

我正在尝试将 XML 字符串转换为 C# 对象,我在 xml 标签中有 json 字符串 acle,如下所示,

<message> <data:gcm xmlns:data=\"google:mobile:data\">{\"message_type\":\"ack\",\"from\":\"sdhad4asd4a-sdasd45ds\",\"message_id\":\"-something\"}</data:gcm> </message>

我想要数据标签中的 json 字符串我只想要上面 xml 中的这个字符串,

{\"message_type\":\"ack\",\"from\":\"sdhad4asd4a-sdasd45ds\",\"message_id\":\"-something\"}

那么我怎样才能使用 c# 来获得它呢?

提前谢谢你。

【问题讨论】:

  • 如果 XML 中元素的值已经是 JSON,那么听起来你真的只是在问“我如何获取特定元素的值XML”对吗?没有特定于 JSON 的内容。我建议您阅读 LINQ to XML 教程。
  • @JonSkeet 是的,你是对的,我想要 XML 元素的值,让我检查一下建议,感谢您的快速回复。感激不尽!

标签: c# .net json xml xml-serialization


【解决方案1】:

通过阅读一些 LINQ to XML 文档,我得到了如下所示的解决方案,

XDocument xdoc = new XDocument();
xdoc = XDocument.Parse(msg.ToString());

var result = xdoc.Element("message").Descendants();

var myString = result.FirstOrDefault().Value; //This will out given json string

再次感谢@JonSkeet 的建议。!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-11-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-05-27
    • 1970-01-01
    • 1970-01-01
    • 2017-09-16
    相关资源
    最近更新 更多