.net读写配置文件
2011-05-21 22:44
246 查看
在网站或应用程序时,经常会用到配置文件,而这些配置文件一般多是xml文档,在开发配置文件过程中,可以采用下面的思路:
每个配置文件对应一个实体类,添加配置文件内容时,就new一个配置实体类并给这个类的属性进行赋值,然后【序列化】为xml,接着保存到文件;
读取时,直接读取前面序列化的xml文档,然后【反序列化】为对应的实体类,通过对实体类的访问以得到配置文件。用到的主要函数:
设置保存配置信息:
读取配置信息:
每个配置文件对应一个实体类,添加配置文件内容时,就new一个配置实体类并给这个类的属性进行赋值,然后【序列化】为xml,接着保存到文件;
读取时,直接读取前面序列化的xml文档,然后【反序列化】为对应的实体类,通过对实体类的访问以得到配置文件。用到的主要函数:
设置保存配置信息:
/// <summary> /// 更新配置信息,将配置信息对象序列化至相应的配置文件中,文件格式为带签名的UTF-8 /// </summary> /// <typeparam name="T">配置信息类</typeparam> /// <param name="config">配置信息</param> public static void UpdateConfig<T>(T config) { if (config == null) { return; } Type configClassType = typeof(T); string configFilePath = GetConfigPath<T>();//根据配置文件名读取配置文件 try { XmlSerializer xmlSerializer = new XmlSerializer(configClassType); using (XmlTextWriter xmlTextWriter = new XmlTextWriter(configFilePath, System.Text.Encoding.UTF8)) { xmlTextWriter.Formatting = Formatting.Indented; XmlSerializerNamespaces xmlNamespace = new XmlSerializerNamespaces(); xmlNamespace.Add(string.Empty, string.Empty); xmlSerializer.Serialize(xmlTextWriter, config, xmlNamespace); } } catch (SecurityException ex) { throw new SecurityException(ex.Message, ex.DenySetInstance, ex.PermitOnlySetInstance, ex.Method, ex.Demanded, (IPermission)ex.FirstPermissionThatFailed); } }
读取配置信息:
/// <summary> /// 获取配置信息 /// </summary> /// <typeparam name="T">配置信息类</typeparam> /// <returns>配置信息</returns> public static T GetConfig<T>() where T : class, new() { Type configClassType = typeof(T); string configFilePath = GetConfigPath<T>();//根据配置文件名读取配置文件 if (File.Exists(configFilePath)) { using (XmlTextReader xmlTextReader = new XmlTextReader(configFilePath)) { XmlSerializer xmlSerializer = new XmlSerializer(configClassType); configObject = xmlSerializer.Deserialize(xmlTextReader); } } T config = configObject as T; if (config == null) { return new T(); } else { return config; } }
/// <summary> /// 获取配置文件的服务器物理文件路径 /// </summary> /// <typeparam name="T">配置信息类</typeparam> /// <returns>配置文件路径</returns> public static string GetConfigPath<T>() { string path = ("E://Config//"); return path + typeof(T).Name + ".config"; }
相关文章推荐
- .NET 2.0中,配置文件app.config的读写(VS2005,C#)
- .Net2.0 使用ConfigurationManager读写配置文件
- .Net网站的独立配置文件读写解决方案
- .NET平台开源项目速览(1)SharpConfig配置文件读写组件
- [导入].NET 2.0中,配置文件app.config的读写(VS2005,C#)
- .net 2.0 中对配置文件的读写
- .NET配置文件读写实例(附SosoftConfigHelper类)
- .NET 2.0中,配置文件app.config的读写(VS2005,C#)
- .Net2.0使用ConfigurationManager读写配置文件
- .net 2.0 中对配置文件的读写
- .NET平台开源项目速览(1)SharpConfig配置文件读写组件
- .net 2.0 中对配置文件的读写(ConfigurationManager)
- .NET 2.0中,使用ConfigureManager读写配置文件
- .net读写配置文件
- .net下读写配置文件app.config方法
- .net 2.0 中对配置文件的读写
- .net 2.0 中对配置文件的读写
- .net 2.0 中对配置文件的读写
- .Net 2.0 中配置文件的读写(转)
- .NET编程 -- .NET 2.0 中对配置文件的读写