将字符串表示形式转换为Json

本文关键字:转换 Json 字符串 表示 | 更新日期: 2023-09-27 18:01:04

我在这个表示中有一个字符串

{
    transaction_id = 120,
    transaction_shortname = 120. AUTO
}

这不是Json表示,我想知道是否有一种简单的方法可以将其转换为Json表示:

 {
        "transaction_id": "120",
        "transaction_shortname": "120. AUTO"
 }

之后,我可以执行以下操作来获得事务对象:

        JObject j = JObject.Parse("{'"transaction_id'": '"120'",'"transaction_shortname'": '"120. AUTO'"}");
        transaction ttttt = JsonConvert.DeserializeObject<transaction>(j.ToString());

将字符串表示形式转换为Json

不,这不能自动转换为JSON,您需要手动解析您的格式。我不知道有什么语言支持这种语法。

然而,如果你绝对确定不会有一些复杂的情况,比如值中的引号字符串和"="answers"''",你可以应用regex:

Regex.Replace(
    source.Replace("'r'n", "'n"),
    @"('n's*)([^'n]*?)'s*='s*([^'n]*?)([,'n])",
    "$1'"$2'": '"$3'"$4")

您给出的摘录符合HJSON的条件,因此可以由任何HJSON库解析。https://hjson.org/

感谢您的回复,
假设我有一个对象对象j;它的基地是

{
    transaction_id = 120,
    transaction_shortname = 120. AUTO 
}

我最后做了以下事情:

   transaction t = JsonConvert.DeserializeObject<transaction>(JsonConvert.SerializeObject(j));