/// <summary> /// xmlSerializer を使用してテストデータ(xmlファイル)を作成 /// </summary> /// <param name="xmlPath">出力先xmlファイル</param> static void generateTestXml(string xmlPath) { // テストデータの作成 GUIFormat dataRoot = new GUIFormat(); dataRoot.ADvProjPath = "project path"; dataRoot.MonInterval = 1500; const int tabCount = 10; const int paramCntPerTab = 10; for (int i = 0; i < tabCount; ++i) { Tab tab = new Tab(); tab.contents = "tab" + (i + 1).ToString(); for (int j = 0; j < paramCntPerTab; ++j) { tab.Parameters.Add( new Parameter() { key = ("param" + ((i + 1) * 10 + (j + 1)).ToString()), value = (i + 1) * 10M + (j + 1) * 0.1M, unit = "deg" } ); } dataRoot.Tabs.Add(tab); } // xmlファイルへ出力 XmlSerializer serializer = new XmlSerializer(typeof(GUIFormat)); try { using (TextWriter writer = new StreamWriter(xmlPath)) { serializer.Serialize(writer, dataRoot); } } catch (Exception exp) { Console.WriteLine("Main: Error: xmlファイルへの出力中にエラーが発生しました。"); Console.WriteLine(" " + exp.Message); } }
/// <summary> /// テストの初期化:xmlPathファイルからXMLSerializerを使用してデータ読み込み /// </summary> /// <param name="xmlPath">xmlファイルへのパス [-] (-)</param> public void init(string xmlPath) { using (FileStream reader = new FileStream(xmlPath, FileMode.Open)) { XmlSerializer serializer = new XmlSerializer(typeof(GUIFormat)); _data = (GUIFormat)serializer.Deserialize(reader); _xmlPath = xmlPath; } }