日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

.net读写配置文件

發(fā)布時間:2024/4/15 编程问答 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 .net读写配置文件 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

???? 在網(wǎng)站或應(yīng)用程序時,經(jīng)常會用到配置文件,而這些配置文件一般多是xml文檔,在開發(fā)配置文件過程中,可以采用下面的思路:
???? 每個配置文件對應(yīng)一個實體類,添加配置文件內(nèi)容時,就new一個配置實體類并給這個類的屬性進(jìn)行賦值,然后【序列化】為xml,接著保存到文件;
???? 讀取時,直接讀取前面序列化的xml文檔,然后【反序列化】為對應(yīng)的實體類,通過對實體類的訪問以得到配置文件。用到的主要函數(shù):

設(shè)置保存配置信息:

/// <summary> /// 更新配置信息,將配置信息對象序列化至相應(yīng)的配置文件中,文件格式為帶簽名的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>();//根據(jù)配置文件名讀取配置文件 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>();//根據(jù)配置文件名讀取配置文件 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> /// 獲取配置文件的服務(wù)器物理文件路徑 /// </summary> /// <typeparam name="T">配置信息類</typeparam> /// <returns>配置文件路徑</returns> public static string GetConfigPath<T>() { string path = ("E://Config//"); return path + typeof(T).Name + ".config"; }

轉(zhuǎn)載于:https://www.cnblogs.com/zhangqs008/archive/2011/05/21/2341132.html

總結(jié)

以上是生活随笔為你收集整理的.net读写配置文件的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。