【C#入門 第10章】JSONとXMLの読み書き入門|データ構造と仲良くなる方法!
こんにちは、 CSharpTimes の一之瀬シィよ💠
今回はC#でよく使われる JSON と XML というデータ形式との付き合い方を教えてあげるわ。
これができれば、API連携や設定ファイル操作も怖くないっ!
📦 JSONとは?
- JavaScript由来の 軽量なデータ形式
- ネットワーク通信や設定ファイルなどでよく使われる
{
"Name": "シィ",
"Age": 20
}
🛠 JSONを扱う方法(System.Text.Json
)
🔽 ① クラスを定義して…
public class Person
{
public string Name { get; set; }
public int Age { get; set; }
}
🔽 ② オブジェクト → JSON に変換(シリアライズ)
using System.Text.Json;
Person p = new Person { Name = "シィ", Age = 20 };
string json = JsonSerializer.Serialize(p);
Console.WriteLine(json);
// {"Name":"シィ","Age":20}
🔽 ③ JSON → オブジェクトに変換(デシリアライズ)
string input = "{\"Name\":\"読者さん\",\"Age\":25}";
Person p2 = JsonSerializer.Deserialize<Person>(input);
Console.WriteLine(p2.Name + "さんは" + p2.Age + "歳!");
📄 XMLとは?
- ExcelやWordの中身にも使われてる 構造化データ
-
.config
などの設定ファイルでもよく見かける
<Person>
<Name>シィ</Name>
<Age>20</Age>
</Person>
🛠 XMLを扱う方法(System.Xml.Serialization
)
using System.Xml.Serialization;
using System.IO;
// 同じクラス Person を使う
Person p = new Person { Name = "シィ", Age = 20 };
XmlSerializer serializer = new XmlSerializer(typeof(Person));
using (StreamWriter writer = new StreamWriter("person.xml"))
{
serializer.Serialize(writer, p);
}
読み込みはこう👇
using (StreamReader reader = new StreamReader("person.xml"))
{
Person loaded = (Person)serializer.Deserialize(reader);
Console.WriteLine("こんにちは、" + loaded.Name + "さん!");
}
📌 まとめ
- JSONはWeb連携や軽量データ向け、XMLは設定ファイル向けによく使われる
-
JsonSerializer
でJSON、XmlSerializer
でXMLを簡単に読み書きできる - データ構造と仲良くなれば、プロっぽさも急上昇よ✨
次回は、 「第11章:APIとの通信」 よ。
インターネット越しにデータをやりとりする、リアルな“C#アプリ”への第一歩よ。ついてきなさい💢