首页 \ 问答 \ 如何使用C#从XML字符串中获取JSON字符串?(How get JSON string from XML string using C#?)

如何使用C#从XML字符串中获取JSON字符串?(How get JSON string from XML string using C#?)

我试图将XML字符串转换为C#对象,我在xml标记中有json string 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 \”,\ “从\”:\ “sdhad4asd4a-sdasd45ds \”,\ “MESSAGE_ID \”:\ “ - 这是\”}

那么我怎样才能使用c#来实现这个目的。

先感谢您。


I am trying to convert XML string to C# object, I have json string acle in xml tag, as shown below,

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

I want json string from data tag I just want this string from above xml,

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

So how can I get this using c#.?

Thank you in advance.


原文:
更新时间:2022-02-19 08:02

最满意答案

你使用单引号而不是双引号 - 因此它将内部括号视为字面值。

你应该交换他们的双引号(并逃避其他人):

$stmt = "{\"status\":{$status},\"message\":{$message}}";

或者你应该摆脱它们并手动连接:

$stmt = '{"status":' . $status . ',"message":' .$message . '}';

这些都应该足够了


You've used single quotes instead of double - therefore it's taken the internal braces as literal.

You should either swap them for double quotes (And escape the others):

$stmt = "{\"status\":{$status},\"message\":{$message}}";

Or you should get rid of them and concatenate manually:

$stmt = '{"status":' . $status . ',"message":' .$message . '}';

Either of these should be sufficient

相关问答

更多