c# - 格式化 JSON 字符串时出错

标签 c# windows

JSON数据是

"participant": {"id": "1"},

我尝试了下面的代码,但是我得到了一个异常

String.Format(("\n\"{0}\":{\"{1}\":\"{2}\"}","participant","id","1"));

异常(exception)是

mscorlib.dll 中出现类型为“System.FormatException”的未处理异常

附加信息:索引(从零开始)必须大于或等于零且小于参数列表的大小。

最佳答案

当您在 string.Format 调用中使用花括号时,您需要使用双花括号将它们转义。

例如:

var str = string.Format("\"{0}\": {{ \"id\": \"{1}\" }}", "participant", 5);

在 string.Format 中,您使用从 0(零)到任何您需要的数字顺序排列的占位符。它们放在单个大括号中,因此需要转义 json 大括号。

另一种选择是使用众多 Json 库之一为您进行序列化,例如 Json.NET ( http://james.newtonking.com/json )

例如。

var anon = new { participant = "bob", id = 5 };
var json = JsonConvert.SerializeObject(anon);

关于c# - 格式化 JSON 字符串时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26523824/

相关文章:

c# - 互操作词动态表创建

javascript - 正确使用调用c#函数的引导开关(T4MVC/Entity Framework)

c# - CollectionView.Refresh不过滤

windows - 将文件从 lnk 文件的文件夹复制回文件夹

c# - 如何使用 C# 代码从 64 位机器上的 64 位应用程序获取 32 位应用程序数据文件夹

c# - 在变量中引用函数?

c++ - 通过适配器描述更改 Mac 地址

python - 为 Python 脚本存储 Windows 配置文件的好地方/方法在哪里?

Laravel 8 部署在 Ubuntu 上,但不断收到 : Undefined variable

c++ - 是否有用于 C 或 C++ 的高级形状绘图 API?