当前位置: 首页 > 知识库问答 >
问题:

C#JSON列表省略标记列表

吴欣悦
2023-03-14

我想创建一个符合JSON proto3的字符串,包括以下部分:

"foo": [[1.0, 2.0], [3.0, 4.0], [5.0, 6.0]]

我不知道怎么做。这似乎是一个列表

"foo": [ "bar": [1.0, 2.0], "bar": [3.0, 4.0], "bar": [5.0, 6.0]]

我只尝试了“Newtonsoft Json. NET”,但这个问题对任何其他JSON库或自定义编码方法都是开放的。如何做到这一点?

编辑:这是一个序列化问题。我无法控制反序列化程序代码。

共有2个答案

谷永贞
2023-03-14

试试这个:

string str = "{ \"foo\": [[1.0, 2.0], [3.0, 4.0], [5.0, 6.0]] }";
var mytype = new { foo = new List<List<decimal>>() };
var mydeserializedtype = JsonConvert.DeserializeAnonymousType(str, mytype);
string str2 = JsonConvert.SerializeObject(mydeserializedtype);

或更经典

class myclass
{
 public List<List<decimal>> foo { get; set; }
}
….
string str = "{ \"foo\": [[1.0, 2.0], [3.0, 4.0], [5.0, 6.0]] }";
myclass my = JsonConvert.DeserializeObject<myclass>(str);
string str2 = JsonConvert.SerializeObject(my);
壤驷彦
2023-03-14

我不确定你哪里出错了,但以下代码运行得很好:

var lists = new List<List<double>>
{
    new List<double> {1.0, 2.0},
    new List<double> {3.0, 4.0}
};
var test = (lists, "test");
Console.Write(JsonConvert.SerializeObject(test));

输出:

{"Item1":[[1.0,2.0],[3.0,4.0]],"Item2":"test"}

你能用一些示例代码编辑你的帖子吗?

 类似资料:
  • 问题内容: 编辑: 我在原始示例中粗心大意。该行为不是在我向自身添加列表时发生的,而是在我向自身添加 包含 列表的列表时发生的。请参阅下面的更正示例。 我试图理解省略号列表(那些在您具有列表引用本身时出现并出现的列表)在Python 2中的工作方式。 我特别想知道为什么,如果是,似乎不同的工作(和)。 也就是说,为什么会得到: 与 (请注意,这似乎对我很有效,就像后者一样。) 如果它有助于弄清楚事

  • 问题内容: 我有一个SQL数据库,用于存储用户和与用户相关联的标签(许多关系)。我有带有表,表和“桥”表的经典架构,该表将用户与标签链接在一起: 现在,我使用以下函数进行查询以逗号分隔的字段的形式检索所有用户及其标签: 这给了我正确的输出: 问题是,现在我想在此基础上实现标签过滤,即能够按标签(或多个标签)查询用户。过滤器应使用AND运算符工作。 例如:获得标记为红色(10)和绿色(20)的用户:

  • 问题内容: 我在玩python。我在IDLE中使用了以下代码: 输出为: 这是[…]什么 有趣的是,我现在可以将其用作无穷大列表的列表,即 我可以根据需要编写以上内容,并且仍然可以使用。 编辑: 它在内存中如何表示? 有什么用?一些有用的例子将很有帮助。 官方文档的任何链接将非常有用。 问题答案: 这意味着你创建了一个嵌套在其内部的无限列表,该列表无法打印。包含p其中包含,依此类推。这种记法是一种

  • 忽略列表显示不需要处理的资源或一类规则建议。 忽略列表显示不需要处理的资源或一类规则建议。当某资源或某类型的建议不需要用户处理时,可以通过忽略或忽略该类建议功能将其显示在忽略列表。 入口:在云管平台单击左上角导航菜单,在弹出的左侧菜单栏中单击 “优化建议/安全检查/忽略列表” 菜单项,进入忽略列表页面。 恢复 当忽略列表中某资源或某规则建议需要用户关注处理时,可以使用恢复功能将其显示在建议列表。

  • 忽略列表显示不需要处理的资源或一类规则建议。 忽略列表显示不需要处理的资源或一类规则建议。当某资源或某类型的建议不需要用户处理时,可以通过忽略或忽略该类建议功能将其显示在忽略列表。 入口:在云管平台单击左上角导航菜单,在弹出的左侧菜单栏中单击 “优化建议/成本优化/忽略列表” 菜单项,进入忽略列表页面。 恢复 当忽略列表中某资源或某规则建议需要用户关注处理时,可以使用恢复功能将其显示在建议列表。

  • 本文向大家介绍C++ 参数省略,包括了C++ 参数省略的使用技巧和注意事项,需要的朋友参考一下 示例 当将参数传递给函数时,参数是函数参数类型的prvalue表达式,而该类型不是引用,则可以忽略prvalue的构造。 这表示要创建一个临时文件string,然后将其移动到function参数中str。复制省略允许该表达式直接在中创建对象str,而不是使用临时+移动。 这对于声明构造函数的情况非常有用