网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > C#应用
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
本月文章推荐
.Visual C#的SQL Server编程.
.C#列出局域网中可用SQL Server服.
.C# GridView 排序及分页.
.VS.Net C# 调用 Active 组件.
.关于正则表达式匹配无异常资源耗.
.c#中获取存储过程方法.
.C#箴言之用属性来访问类的私有成.
.C#中Dispose和Close的区别.
.c#写系统日志.
.存储过程中调用C#写的DLL.
.使用c#捕获windows的关机事件.
.一个极其简单的在线C#IDE例子.
.c#中分割字符串的几种方法.
.一个用c#写的扫描asp源码漏洞的应.
.C#实现SMTP服务器,使用TCP命令实.
.C#下的查杀进程.
.c# MD5加密算法的一个实例.
.深入解析C#编程中的事件.
.C#入门代码.
.C#编写发送电子邮件.

序列化和反序列化XML应用程序设置类

发表日期:2006-3-31


  1        public class ApplicationSettings
  2        {
  3
  4            private bool appSettingsChanged;
  5            // 用于存储应用程序设置的变量。
  6
  7            private Point formLocation;
  8       
  9            public Point FormLocation
 10            {
 11                get { return formLocation; }
 12                set
 13                {
 14                    if (value != formLocation)
 15                    {
 16                        formLocation = value;
 17                        appSettingsChanged = true;
 18                    }
 19                }
 20            }
 21
 22
 23            // 从配置文件中反序列化类。
 24            public bool LoadAppSettings()
 25            {
 26                XmlSerializer mySerializer = null;
 27                FileStream myFileStream = null;
 28                bool fileExists = false;
 29
 30                try
 31                {
 32                    // 为 ApplicationSettings 类型创建 XmlSerializer。
 33                    mySerializer = new XmlSerializer(typeof(ApplicationSettings));
 34                    FileInfo fi = new FileInfo(Application.LocalUserAppDataPath
 35                       + @"\myApplication.config");
 36                    // 如果配置文件存在,将其打开。
 37                    if (fi.Exists)
 38                    {
 39                        myFileStream = fi.OpenRead();
 40                        // 反序列化配置文件以创建新的
 41                        // ApplicationSettings 实例。
 42                        ApplicationSettings myAppSettings =
 43                          (ApplicationSettings)mySerializer.Deserialize(
 44                           myFileStream);
 45                        // 为 ApplicationSettings 类的这一实例
 46                        // 分配属性值。
 47                        this.formLocation = myAppSettings.FormLocation;
 48                        fileExists = true;
 49                    }
 50                }
 51                catch (Exception ex)
 52                {
 53                    MessageBox.Show(ex.Message);
 54                }
 55                finally
 56                {
 57                    // 如果 FileStream 是打开的,将其关闭。
 58                    if (myFileStream != null)
 59                    {
 60                        myFileStream.Close();
 61                    }
 62                }
 63
 64           
 65                return fileExists;
 66            }
 67
 68            // 如果设置发生变化,则将
 69            // 类序列化到配置文件中。
 70            public bool SaveAppSettings()
 71            {
 72                if (this.appSettingsChanged)
 73                {
 74                    StreamWriter myWriter = null;
 75                    XmlSerializer mySerializer = null;
 76                    try
 77                    {
 78                        // 为 ApplicationSettings 类型
 79                        // 创建 XmlSerializer。
 80                        mySerializer = new XmlSerializer(
 81                          typeof(ApplicationSettings));
 82                        myWriter =
 83                          new StreamWriter(Application.LocalUserAppDataPath
 84                          + @"\myApplication.config", false);
 85                        // 将 ApplicationSettings 类的这一实例
 86                        // 序列化到配置文件中。
 87                        mySerializer.Serialize(myWriter, this);
 88                    }
 89                    catch (Exception ex)
 90                    {
 91                        MessageBox.Show(ex.Message);
 92                    }
 93                    finally
 94                    {
 95                        // 如果 FileStream 是打开的,将其关闭。
 96                        if (myWriter != null)
 97                        {
 98                            myWriter.Close();
 99                        }
100                    }
101                }
102                return appSettingsChanged;
103            }
104        }

出处:ting BLOG

上一篇:C#程序模拟鼠标操作 [Simulate Mouse Movement and Click Programmatically] 人气:9454
下一篇:c#摄氏华氏转换 人气:12675
浏览全部XML的内容 Dreamweaver插件下载 网页广告代码 祝你圣诞节快乐 2009年新年快乐