簡體   English   中英

最簡單的方法是將BSON和JSON用於JSON.Net?

[英]Easiest way to use JSON.Net for both BSON and JSON?

我有一些字節數組byte[]的數據,我需要在JSON中將它們渲染為base64,但是作為BSON中的原始字節數組。

如何在JSON.Net中輕松完成此操作?

所以,我有類似的東西:

class Data
{
    public byte[] Bytes{get;set;}
}

轉換為BSON很好,但是當轉換為JSON時,它當然不是base64編碼並被視為字符串

嗯,使用以下代碼與Json.Net 6.0.1,它似乎工作正常,沒有特殊處理:字節數組轉換為base-64字符串,反之亦然。 您是以不同的方式序列化對象,還是使用舊版本? 如果沒有,你能提供一些證明問題的代碼嗎?

string s = "Foo Bar Baz Quux";

Data data = new Data
{
    Bytes = Encoding.UTF8.GetBytes(s)
};

string json = JsonConvert.SerializeObject(data);
Console.WriteLine(json);

data = JsonConvert.DeserializeObject<Data>(json);
Console.WriteLine(Encoding.UTF8.GetString(data.Bytes));

輸出:

{"Bytes":"Rm9vIEJhciBCYXogUXV1eA=="}
Foo Bar Baz Quux

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM