// created on 11/23/2005 at 9:45 AM using System; using System.Collections; using System.IO; using System.Xml; using System.Xml.Serialization; namespace Expector { [XmlRoot("ConfigFile")] public class cl_xmlhandler { public ArrayList listConfig; public void ConfigList () { listConfig = new ArrayList(); } [XmlElement("item")] public Item[] Items { get { Item[] items = new Item[ listConfig.Count ]; listConfig.CopyTo( items ); return items; } set { if( value == null ) return; Item[] items = (Item[])value; listConfig.Clear(); foreach( Item item in items ) listConfig.Add( item ); } } public int AddItem( Item item ) { return listConfig.Add( item ); } public class Item { [XmlAttribute("name")] public string name; [XmlAttribute("setting")] public string setting; public Item() { } public Item( string Name, string Setting ) { name = Name; setting = Setting; } } } public class cl_confighandler { cl_xmlhandler Config = new cl_xmlhandler(); public void initconfig() { Config.AddItem( new cl_xmlhandler.Item( "username", "changeme") ); Config.AddItem( new cl_xmlhandler.Item( "server", "127.0.0.1") ); cl_confighandler confighandler = new cl_confighandler(); XmlSerializer s = new XmlSerializer( typeof( cl_xmlhandler ) ); TextWriter w = new StreamWriter( "config.xml" ); s.Serialize( w, Config ); w.Close(); } public void readconfig() { XmlSerializer s = new XmlSerializer( typeof( cl_xmlhandler ) ); cl_xmlhandler newList; TextReader r = new StreamReader( "config.xml" ); newList = (cl_xmlhandler)s.Deserialize( r ); r.Close(); } public void writeconfig() { XmlSerializer s = new XmlSerializer( typeof( cl_xmlhandler ) ); TextWriter w = new StreamWriter( "config.xml" ); s.Serialize( w, Config ); w.Close(); } } }