static void deserializeFSDDL2() { string dirXml = ""; FileStream fileStream = new FileStream(@"D:\backup\FSDDLTest2.xml", FileMode.Open, FileAccess.Read, FileShare.Read); StreamReader reader = new StreamReader(fileStream); dirXml = reader.ReadToEnd(); reader.Close(); fileStream.Close(); DataIntegrator.Descriptions.FileSystem.FSDDL.Directory dir = XMLUtility.XmlDeserialize(dirXml, typeof(DataIntegrator.Descriptions.FileSystem.FSDDL.Directory), new Type[] { typeof(DataIntegrator.Descriptions.FileSystem.FSDDL.File) }) as DataIntegrator.Descriptions.FileSystem.FSDDL.Directory; Console.WriteLine(dir); Console.WriteLine(dir.Name); Console.WriteLine(dir.Directories[0].Directories[0].Files[0].Name); Console.WriteLine(Encoding.UTF8.GetString(dir.Directories[0].Directories[0].Files[0].Content)); DataIntegrator.Helpers.FileSystem.FileSystemHelper helper = new DataIntegrator.Helpers.FileSystem.FileSystemHelper(); System.IO.DirectoryInfo dirInfo = helper.WriteFiles(@"D:\bakcup\DITest", dir) as System.IO.DirectoryInfo; Console.WriteLine(dirInfo.FullName); Console.Read(); }
static void serializeFSDDL2() { DataIntegrator.Helpers.FileSystem.FileSystemHelper helper = new DataIntegrator.Helpers.FileSystem.FileSystemHelper(); DataIntegrator.Descriptions.FileSystem.FSDDL.Directory dir = helper.ListFiles(@"D:\home\v-rawang\Documents\Quanta\Quanta 2nd round\", "*.xml"); string dirXml = XMLUtility.XmlSerialize(dir, new Type[] { typeof(DataIntegrator.Descriptions.FileSystem.FSDDL.File) }); Console.Write(dirXml); FileStream fileStream = new FileStream(@"D:\backup\FSDDLTest2.xml", FileMode.Create, FileAccess.Write, FileShare.Write); StreamWriter writer = new StreamWriter(fileStream, Encoding.UTF8); dirXml = dirXml.Insert(dirXml.IndexOf("?>"), " encoding=\"utf-8\""); dirXml = dirXml.Substring(0, dirXml.LastIndexOf(">") + 1); writer.Write(dirXml); writer.Flush(); fileStream.Flush(); writer.Close(); fileStream.Close(); Console.Write(dirXml); Console.Read(); }