私はJSONを学んでいます。私はそれを動作させましたが、動作する理由と動作方法を知りたいです。私はなぜいくつかの行が必要で、何をするのか混乱しています。これはすべてJSONに必要なのですか?
以下は私の主なcsと私のPerson
クラスです:私はJSONstring
をJSON.jsonの内容と同じにしているという印象を受けています。その場合、どうして私はただWriteline JSONstring
だけでなく、そこに\n
を追加して別の行に追加できますか?
Console.WriteLine(p1);
p1
の出力は、逆シリアル化されたJSONと同じです。なぜ他のコードが必要なのか正確にはわかりません。
// Make JSONstring = to the text in JSON.json
String JSONstring = File.ReadAllText("JSON.json");
JavaScriptSerializer ser = new JavaScriptSerializer();
Person p1 = ser.Deserialize<Person>(JSONstring);
Console.WriteLine(p1);
Console.ReadLine();
class Person
{
public string name { get; set; }
public int age { get; set; }
public override string ToString()
{
return string.Format("Name: {0} \nAge: {1}", name, age);
}
}
行を分ける場所を正確に知っていますか?より現実的には、プロジェクトの目標はJSONを再フォーマットするだけでなく、実際の値を使用することです。そのためには、逆シリアル化する必要があります... –
JSONの操作を練習するプロジェクトを作成しました。そのプロジェクトでは、文字列を逆シリアル化して値を出力します。デシリアライズする代わりに元の文字列を印刷するだけですか?あなたが言ったように、JSONを使って練習することはできませんでしたか?そうでなければ、それはあなたが答えることができる質問だけです。 – Servy
p1はデシリアライズされたJSONではありません。 'ToString()'メソッドの返り値です。それがJSONの場合は、まあ、OKです。しかし、それはまったく何でもかまいません。 –