System.Text.Json.JsonSerializer.Serialize将返回字符串括在双引号中

问题描述

System.Text.Json.JsonSerializer.Serialize将返回字符串用双引号引起来。

我想我可以从返回字符串中删除第一个和最后一个字符,但是想知道这样做的目的是什么。

默认情况下,有什么我可以使序列化程序排除它们的吗?

string linkCipherString = JsonSerializer.Serialize<byte[]>(linkCipherBytes);

解决方法

JsonSerializer.Serialize<T>(object)将生成如下的json字符串:

"{\"Id\":1,\"Name\":\"aaa\"}"

字符串文字是字符串类型,可以用引号和@引号两种形式编写。这是C#设计的,您不能更改它。您只能删除字符串中的双引号像\"这样的数据。

https://docs.microsoft.com/en-us/dotnet/csharp/language-reference/builtin-types/reference-types#the-string-type

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...