我在这个表示中有一个字符串
{
transaction_id = 120,
transaction_shortname = 120. AUTO
}
这不是一个Json表示我想知道是否有一种简单的方法将它转换为Json表示如下:
{
"transaction_id": "120",
"transaction_shortname": "120. AUTO"
}
之后,我可以执行以下操作来获取Transaction对象:
JObject j = JObject.Parse("{\"transaction_id\": \"120\",\"transaction_shortname\": \"120. AUTO\"}");
transaction ttttt = JsonConvert.DeserializeObject<transaction>(j.ToString());
答案 0 :(得分:1)
不,这不能自动转换为JSON,您需要手动解析您的格式。我不知道任何支持这种语法的语言。
但是,如果您完全确定在值中不会出现一些复杂的情况,例如带引号的字符串和“=”和“\”“,那么您可以只应用正则表达式:
Regex.Replace(
source.Replace("\r\n", "\n"),
@"(\n\s*)([^\n]*?)\s*=\s*([^\n]*?)([,\n])",
"$1\"$2\": \"$3\"$4")
答案 1 :(得分:1)
您提供的摘录符合HJSON标准,因此可以被任何HJSON库解析。 https://hjson.org/
答案 2 :(得分:0)
感谢您的回复,
让我们说我有一个对象
对象j;
它的基础是
{
transaction_id = 120,
transaction_shortname = 120. AUTO
}
我最后做了以下事情:
transaction t = JsonConvert.DeserializeObject<transaction>(JsonConvert.SerializeObject(j));