分析discuz nt2.0的DefaultConfigFileManager.cs文件

本文介绍了一个使用C#实现XML反序列化的示例方法,该方法通过FileStream和XmlSerializer从指定配置文件路径加载并转换为指定类型的实例。同时详细解释了FileStream构造函数的参数含义以及XmlSerializer构造函数的使用。
 1 public   static  IConfigInfo DeserializeInfo( string  configfilepath, Type configtype)
 2          {
 3
 4            IConfigInfo iconfiginfo;
 5            FileStream fs = null;
 6            try
 7            {
 8                fs = new FileStream(configfilepath, FileMode.Open, FileAccess.Read, FileShare.ReadWrite);
 9                XmlSerializer serializer = new XmlSerializer(configtype);
10                iconfiginfo = (IConfigInfo)serializer.Deserialize(fs);
11            }

12            catch (Exception ex)
13            {
14                throw ex;
15            }

16            finally
17            {
18                if (fs != null)
19                {
20                    fs.Close();
21                }

22            }

23
24            return iconfiginfo;
25        }

FileStream 构造函数 (Path, FileMode, FileAccess, FileShare)

path 当前 FileStream 对象将封装的文件的相对路径或绝对路径。 mode FileMode 常数,确定如何打开或创建文件。 access FileAccess 常数,它确定 FileStream 对象访问文件的方式。这将获取 FileStream 对象的 CanReadCanWrite 属性。如果 path 指定磁盘文件,则 CanSeektrueshare FileShare 常数,确定文件如何由进程共享。【允许随后打开文件读取或写入。如果未指定此标志,则文件关闭前,任何打开该文件以进行读取或写入的请求(由此进程或另一进程发出的请求)都将失败。但是,如果指定了此标志,仍可能需要附加权限才能访问文件。】

XmlSerializer 构造函数 (Type)

参数
type
XmlSerializer 可序列化的对象的类型。
  XmlSerializer类提供了把对象串行化为XML文件及把XML文档非串行化为对象的方法。它还能让用户指定对象如何转化为XML。可以把将被串行化的对象的类型作为类构造函数的参数。下面的C# 代码说明了构造函数的用法。

转载于:https://www.cnblogs.com/wiyy315/archive/2008/04/17/1158896.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值