プロジェクトの埋め込みリソースにファイルJsonを追加しました。 特定のオブジェクトのリストを含むこのファイルを読み込み、それを逆シリアル化したいと思います。オブジェクトの配列へのjsonオブジェクトのデシリアライズ
私は、次のようなJSONファイルを持っている:
[
{
"Status": 21,
"CustomerId": "e3633ccb-bbea-465d-9ce6-6c37e9c40e2e"
},
{
"Status": 20,
"CustomerId": "d02e2970-7c28-41b0-89f3-5276a97e12c9"
}
]
と、次のモデルは:
public class CustomerStatus
{
public int Status { get; set; }
public string CustomerId { get; set; }
}
私はリソースからJSONファイルを読み込むと、それはバイトの配列の形式で自動的にあると私は変換して文字列には、\ r \ nと\ tが含まれています。私はラインを次している私のコードで
はこれを達成するため行うが、それは失敗します。
var string customerdata = System.Text.Encoding.UTF8.GetString(myResources.CustomerStatus);
var data = JsonConvert.DeserializeObject<List<CustomerStatus>>(customerdata);
私はこのエラーが表示されます。 は値を解析中に「Newtonsoft.Json.JsonReaderException」メッセージ」予期しない文字が遭遇したタイプの例外を投げました: 。パス ''、行0、位置0。
UPDATE:
次の行にも同じ問題を引き起こす:
var string customerdata = System.Text.Encoding.UTF8.GetString(myResources.CustomerStatus);
.Replace("\r\n", " ")
.Replace("\t", " ");
ファイルの先頭にバイトオーダーのマークがあり、それが文字列に終わると思います。 'customerdata'の最初の文字の文字コードが0xFEFFかどうか確認してください。 –