//Retrieve Data from XML static public UnitFileRowList DeserializeFromXML(UnitFileRowList myOriginalFileList) { XmlSerializer deserializer = new XmlSerializer(typeof(UnitFileRowList)); UnitFileRowList myFilesFromXML = new UnitFileRowList(); //Microsoft method to create open file dialog and filter to get all Revit files. Microsoft.Win32.OpenFileDialog dlg = new Microsoft.Win32.OpenFileDialog(); dlg.Filter = "XML File | *.xml"; dlg.Multiselect = false; string myFileName = ""; Nullable <bool> result = dlg.ShowDialog(); if (result == true) { myFileName = dlg.FileName; } if (myFileName != "") { TextReader textReader = new StreamReader(myFileName); myFilesFromXML = (UnitFileRowList)deserializer.Deserialize(textReader); textReader.Close(); MasterFolderLocation = Path.GetDirectoryName(dlg.FileName); return(myFilesFromXML); } return(myOriginalFileList); }
static public bool WriteTXT(UnitFileRowList _myFileNames, string _filepath) { //string _filepath = @"C:\Temp\NWC_FileList.txt"; StreamWriter SaveTextFile = new StreamWriter(_filepath); foreach (UnitFileRow element in _myFileNames.ListRowItem) { if (element.UnitFileSelection == true && File.Exists(element.UnitFileName)) { SaveTextFile.WriteLine(element.UnitFileName); } } SaveTextFile.Close(); return(true); }
//Convert Data into XML static public void SerializeToXML(UnitFileRowList XMLdata) { XmlSerializer serializer = new XmlSerializer(typeof(UnitFileRowList)); Microsoft.Win32.SaveFileDialog dlg = new Microsoft.Win32.SaveFileDialog(); dlg.AddExtension = true; dlg.Filter = "XML File | *.xml"; dlg.Title = "Save the XML data for future retrieval."; //dlg.CheckFileExists = true; Nullable <bool> result = dlg.ShowDialog(); if (result == true) { string custFilename = dlg.FileName; FileStream stream = null; stream = new FileStream(custFilename, FileMode.Create, FileAccess.Write); serializer.Serialize(stream, XMLdata); stream.Close(); MasterFolderLocation = Path.GetDirectoryName(dlg.FileName); } }