gpt4 book ai didi

c# - JSonNet bool 序列化

转载 作者:可可西里 更新时间:2023-11-01 08:37:18 26 4
gpt4 key购买 nike

快速提问:

在 JSONNet 中——如何获取 bool true/false 以序列化为 bool 1/0

我可以看到我们如何处理空值以及所有似乎无法找到如何执行此操作的方法。

这可能吗?

最佳答案

您可以像这样实现自定义转换器:

[TestFixture]
public class CustomJsonSerialization
{
[Test]
public void Test()
{
string serializeObject = JsonConvert.SerializeObject(true, new BoolConverter());
Assert.That(serializeObject, Is.EqualTo("1"));
var deserializeObject = JsonConvert.DeserializeObject<bool>(serializeObject, new BoolConverter());
Assert.That(deserializeObject, Is.True);
}
}

public class BoolConverter : JsonConverter
{
public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
{
writer.WriteValue(((bool)value) ? 1 : 0);
}

public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer)
{
return reader.Value.ToString() == "1";
}

public override bool CanConvert(Type objectType)
{
return objectType == typeof(bool);
}
}

关于c# - JSonNet bool 序列化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9738324/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com