当前位置: 首页 > news >正文

做西点网站苏州网站

做西点网站,苏州网站,网站开辟两学一做专栏,凡客诚品官方网店下本文将详细介绍如何在.NET桌面程序中使用自定义的XML配置文件来保存和读取设置。除了XML之外,我们还将探讨其他常见的配置文件格式,如JSON、INI和YAML,以及它们的优缺点和相关的NuGet类库。最后,我们将重点介绍我们为何选择XML作为…

本文将详细介绍如何在.NET桌面程序中使用自定义的XML配置文件来保存和读取设置。除了XML之外,我们还将探讨其他常见的配置文件格式,如JSON、INI和YAML,以及它们的优缺点和相关的NuGet类库。最后,我们将重点介绍我们为何选择XML作为配置文件格式,并展示一个实用的示例。

1. 背景

在.NET桌面程序中,通常使用setting文件来保存程序的配置信息。使用setting文件的方法很简单,只需在项目中添加一个setting文件,然后通过Properties.Settings.Default来获取和保存设置即可。

我的开源项目 HackerScreenSaver 之前就是使用这种方式,但是当我在升级 Windows11 的内核版本后,发现当程序在被系统以屏保程序启动后,无法加载配置了。

如此这般就需要使用其他方式来存储配置文件了。毕竟,setting文件并非唯一可用于保存设置的方式。我们可以选择存储到注册表,或者自己写配置文件并保存。

2. 常见的配置文件格式

对于一些简单的配置我们甚至可以直接写一个二进制文件,当然一般情况下我们还是选择常见格式的配置文件,比如:JSON、INI 和 YAML。

  1. JSON(JavaScript Object Notation) 格式
    • 优点:易于阅读和编写,支持复杂的数据结构,广泛应用于Web API和前端开发。
    • 缺点:根据 JSON 规范,其是不支持注释的(单独 Json 文件在某些编辑器可以正确解析注释,在 .NET Core 中通过 JSON 配置提供程序读取配置时,也可以在配置文件中添加注释)。
    • 相关类库:Newtonsoft.Json(建议使用自带的 System.Text.Json)迁移可参考相关教程。
  2. INI(Initialization File)
    • 优点:简洁,易于阅读和编辑,适用于存储简单的键值对。
    • 缺点:不支持复杂的数据结构和类型。
    • 相关类库:ini-parser
  3. YAML(Yet Another Markup Language)
    • 优点:简洁,易于阅读和编辑,支持复杂的数据结构,支持注释。
    • 缺点:缩进敏感,可能导致错误。
    • 相关类库:YamlDotNet

3. HackerScreenSaver 的配置选择

HackerScreenSaver 为了设计的小巧,根据合适原则和简单原则,我最终选择了不需要引入其他第三方的 XML 格式配置文件。

XML(eXtensible Markup Language)具有以下优点:

  • 可扩展性强,支持复杂的数据结构。
  • 支持注释,便于理解和维护。
  • 作为标准的数据交换格式,易于与其他系统集成。

以下是我们设计的一个简单的配置类 SimpleSetting,用于保存设置:

public class SimpleSetting
{// 类的属性和构造函数省略.../// <summary>/// 从文件中读取设置/// </summary>/// <param name="path">配置文件路径</param>public SimpleSetting(string path){System.Xml.Serialization.XmlSerializer xs = new System.Xml.Serialization.XmlSerializer(typeof(SimpleSetting));using (System.IO.FileStream fs = new System.IO.FileStream(path, System.IO.FileMode.Open)){SimpleSetting ss = (SimpleSetting)xs.Deserialize(fs);isLocal = ss.isLocal;uInfo = ss.uInfo;Opacity = ss.Opacity;autoExit = ss.autoExit;}}/// <summary>/// 保存设置到文件/// </summary>/// <param name="path">配置文件路径</param>public void Save(string path){System.Xml.Serialization.XmlSerializer xs = new System.Xml.Serialization.XmlSerializer(typeof(SimpleSetting));using (System.IO.FileStream fs = new System.IO.FileStream(path, System.IO.FileMode.Create)){xs.Serialize(fs, this);}}
}

SimpleSetting 类中包含了从XML文件中读取设置和将设置保存到XML文件的方法。为了使用该类,我们只需要在程序中创建一个 SimpleSetting 对象,然后调用其 SaveLoad 方法即可。这样,我们就可以在.NET桌面程序中使用自定义的XML配置文件来保存设置了。

4. 最后

本文详细介绍了如何在.NET桌面程序中使用自定义的 XML 配置文件以及为何选择 XML 作为配置文件格式。同时,我们还探讨了其他常见的配置文件格式,如 JSON、INI 和 YAML,以及它们的优缺点和相关的 NuGet 类库。希望这篇文章能帮助你找到适合你项目需求的配置文件解决方案!

http://www.shuangfujiaoyu.com/news/61162.html

相关文章:

  • 青岛seo百科北京百度推广排名优化
  • 网站建设公司业务人员岗位职责实体店营销方案
  • 北京服饰电商网站建设广州顶正餐饮培训学校
  • 备案要关闭网站吗爱网站
  • 点石嘉业北京网站建设公司无锡百度正规推广
  • 网站建设维护更新铜仁搜狗推广
  • 网站建设营销公司信息流广告接单平台
  • 某拍卖公司企业网站源码今日头条热搜榜前十名
  • 网页设计实验报告总结模板石家庄网站优化
  • 成功的营销网站的例子为企业策划一次网络营销活动
  • 什么类型的网站容易被百度抓取站长工具友链查询
  • 泰州建站价格长沙sem培训
  • 内网网站建设的必要性谷歌app官方下载
  • 能玩游戏的网站海外广告联盟平台推广
  • 兰州网站推广建设怎样进行关键词推广
  • 定制网站建设公司价格怎么自己建网站
  • 艺术名画网站怎么建设谷歌优化
  • 门户网站制作流程产品推广找哪家公司
  • 独特的网站网站建设公司排行榜
  • 品牌网站设计制作公司地址营销策划方案内容
  • 网站核心推广思路百度竞价代运营公司
  • 纪委建设网站的意义优化网站建设seo
  • 建设银行网站个人客户免费seo网站推广在线观看
  • 网络营销策划方案的编写方法及内容项链seo关键词
  • ui设计哪里培训机构seo岗位工资
  • 邢台做移动网站价格百度搜索排名查询
  • 现在建网站做淘宝联盟推广能赚钱吗如何做宣传推广营销
  • asp.net网站模板免费下载企业宣传片
  • wordpress搬到谷歌服务器宁波seo公司哪家好
  • 把网站从空间删除软件编程培训学校排名