C#中Newtonsoft能禁止将字节数组转成basic64字符串吗

我现在用Newtonsoft将对象转成json字符串,如果对象中有字节数组,转出来的结果就是个basic64字符串,比如byte[] arr = new byte[10],转出来就是AAAAAAAAAAAAAA==,有没有什么办法能禁止这种格式,将其改成和其他数组一样的[0,0,0,0,0,0,0,0,0,0]这类的形式

回答

可以自己写一个自定义序列化, 大概就是这样子

new JsonSerializerSettings().Converters.add(new myByteConverter())


class myByteConverter:  Newtonsoft.Json.Converters.CustomCreationConverter<byte[]>{
public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
            {
                writer.WriteStartArray();
                (value as byte[]).Each(b=>writer.WriteValue(b))
                writer.WriteEndArray();
            }
}
以上是C#中Newtonsoft能禁止将字节数组转成basic64字符串吗的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>