Newtonsoft JObject转字符串时自动添加换行符问题求助
解决JObject转字符串时去除换行符的方法
默认情况下,JObject.ToString()会使用带缩进的格式化输出(对应Formatting.Indented),因此会生成包含\r\n和空格的字符串。要生成无格式的紧凑JSON字符串,只需调用带参数的重载方法即可:
具体实现代码
JObject jo = new JObject(); jo.Add("role", "user"); // 传入Formatting.None参数禁用格式化输出 string compactJson = jo.ToString(Formatting.None); // 输出结果: "{"role":"user"}"
补充说明
Formatting.Indented(默认行为):生成带缩进、换行的易读格式JSON,方便人工查看Formatting.None:生成无缩进、无换行的紧凑格式JSON,适合程序间传输或存储
单独获取属性值时jo["role"].ToString()输出无换行,是因为属性值属于简单类型(字符串),其ToString方法直接返回值本身,不会应用JSON的格式化规则。
内容的提问来源于stack exchange,提问作者Velocedge
相关产品推荐
相关产品推荐

