/*★ XML から姓名とC言語を表示 前田 稔 ★*/ #using #using using namespace System; using namespace System::IO; using namespace System::Text; using namespace System::Xml::Serialization; public ref class NameCls { public: [XmlElement("姓")] String^ Sei; [XmlElement("名")] String^ Mei; }; public ref class KamokuCls { public: [XmlElement("C言語")] int Ten3; }; [XmlRoot("成績表")] public ref class SeisekiData { public: [XmlElement("姓名")] NameCls^ Name; [XmlElement("科目")] KamokuCls^ Kamoku; }; [XmlRoot("成績管理")] public ref class SeisekiClass { public: [XmlElement("成績表")] array^ Sdata; }; int main() { //XMLファイルから復元する XmlSerializer^ serializer = gcnew XmlSerializer(SeisekiClass::typeid); FileStream^ fs = gcnew FileStream("c:\\tmp\\config.xml", FileMode::Open); SeisekiClass^ target = (SeisekiClass^)serializer->Deserialize(fs); fs->Close(); //復元した内容を表示する for(int i=0; i<10; i++) { Console::Write(target->Sdata[i]->Name->Sei + target->Sdata[i]->Name->Mei); Console::WriteLine(" : " + target->Sdata[i]->Kamoku->Ten3); } return 0; }