ini配置文件格式
发布日期:2021-06-30 18:37:32 浏览次数:2 分类:技术文章

本文共 2028 字,大约阅读时间需要 6 分钟。

文章目录

为什么要用INI文件?如果我们的程序没有任何配置文件时,这样的程序对外是全封闭的,一旦程序需要修改一些参数必须要修改程序代码本身并重新编译,这样很不好,所以要用配置文件,让程序出厂后还能根据需要进行必要的配置;配置文件有很多,如INI配置文件,XML配置文件,还有就是可以使用系统注册表等。

一、简介

*.ini文件是Initialization file的缩写,即为初始化文件,是Windows系统配置文件所采用的存储格式,统管Windows的各项配置,一般用户就用Windows提供的各项图形化管理界面就可以实现相同的配置了。但在某些情况,还是要直接编辑ini才方便,一般只有很熟悉Windows才能去直接编辑。

*.ini开始时使用于WIN3X下面,WIN95用注册表代替。

除了windows2003很多其他操作系统下面的应用软件也有*.ini文件,用来配置应用软件以实现不同用户的要求。一般不用直接编辑这些ini文件,应用程序的图形界面即可操作以实现相同的功能。它可以用来存放软件信息、注册表信息等。

二、文件扩展名

配置文件.ini

请注意:我们所讨论的是项目中的配置文件,它是整个项目共用的,所以它要有一个项目使用的文件名,其后缀是.ini。例如:端口配置 port.ini。

当然ini配置文件的后缀名也不一定必须是“.ini”,也可以是“.cfg”、“.conf”或者是“.txt”。

三、格式

ini配置文件由节、键、值组成。

【参数】(键=值):

INI所包含的最基本的“元素”就是参数(parameter),每个参数都有一个name和一个value,name和value由等号“=”隔开,name在等号的左边。如:

name=value

【节】:

所有的参数都是以节(section)为单位结合在一起的。所有的section名称都是独占一行,并且section名字都被方括号包围着([和])。在section声明后的所有parameters都属于该section。一个section没有明显的结束标识符,一个section的开始就是上一个section的结束,或者是文件结束。如:

[section]

【注解】:

注解(comments)使用分号表示(;),在分号后面的文字,直到该行结尾都全部为注释。

;comment textINI文件的数据格式的例子(配置文件的内容)

【举例】:

[Section1 Name]Keyname1=value1Keyname2=value2... ...[Section2 Name]Keyname21=value21Keyname22=value22

    [Section1 Name]用来表示一个段落,因为INI文件可能是项目中共用的,所以使用Section Name段名来区分不同用途的参数区。例如[Section1 Name]表示传感器灵敏度参数区;[Section2 Name]表示测量通道参数区等等。

    Keyname1=value1用来表示一个参数名和值。比如:Num=80,Name=app。

    四、实例

    如下为串口的一个INI配置实例:

    ; exp ini file[port]Portname=COM4Port=4

      五、作用

      *.ini、*.inc之类的文件,一般是放一些常量或数据库链接语句等,再在需要的页面包含进去,和直接命为asp是没什么区别的。

      但为了安全性,最好不要用这些后缀名,因为知道文件名时,在浏览器里输入该文件的地址时,可看到所有内容的。

      在Windows系统中,INI文件是很多,最重要的就是“System.ini”、“System32.ini”和“Win.ini”。该文件主要存放用户所做的选择以及系统的各种参数。用户可以通过修改INI文件,来改变应用程序和系统的很多配置。但自从Window 95的推出,在Windows系统中引入了注册表的概念,INI文件在Windows系统的地位就开始不断下滑,这是因为注册表的独特优点,使应用程序和系统都把许多参数和初始化信息存放进了注册表中。但在某些场合,INI文件还拥有不可替代的地位。

      .ini文件是windows的系统配置文件,统管windows的各项配置,一般用户就用windows提供的各项图形化管理界面就可实现相同的配置了,但在某些情况,还是要直接编辑.ini才方便,一般只有很熟悉windows才能去直接编辑。

      六、经验

      以我个人的使用经验来讲,通常将IOT和服务器相关的配置信息写入到ini配置文件,然后ini配置文件的路径通过系统环境变量XXX_CONFIG_PATH来进行动态指定(而不是代码固化,当然代码会有一个默认路劲),从而给我们的应用程序提供了非常大的灵活度

      原文链接:https://blog.csdn.net/a123441/article/details/90668032

      转载地址:https://linjun.blog.csdn.net/article/details/115109555 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

      上一篇:物联网设备感染Mirai病毒发起的DDoS攻击
      下一篇:物联网常用的无线通信技术

      发表评论

      最新留言

      初次前来,多多关照!
      [***.217.46.12]2024年04月14日 05时22分26秒

      关于作者

          喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
      -- 愿君每日到此一游!

      推荐文章

      【解决错误】复现RCAN的时候遇到了ImportError: cannot import name ‘_update_worker_pids’ from ‘torch._C’ 2019-04-30
      【解决错误】ModuleNotFoundError: No module named ‘skimage‘ 2019-04-30
      【深度学习笔记】pytorch的点乘(dot product) 2019-04-30
      【深度学习笔记】残差 2019-04-30
      【错误解决】cv2.error: OpenCV(4.2.0) C:\projects\opencv-python\opencv\modules\imgproc\sr 2019-04-30
      【python学习笔记】读取指定文件夹中的图片,结合边缘保留滤波EPF 2019-04-30
      【工具和环境】Linux下安装pycharm 2019-04-30
      【Accumulation】The last two sentences of the abstract 2019-04-30
      【工具与环境】Windows下安装Sublime Text 3 2019-04-30
      【解决错误】ValueError: some of the strides of a given numpy array are negative. 2019-04-30
      【工具与环境】Excel中批量插入行 2019-04-30
      【个人实验注意事项】 2019-04-30
      【解决错误】ModuleNotFoundError: No module named ‘tqdm‘ 2019-04-30
      【解决错误】ModuleNotFoundError: No module named ‘PIL‘ 2019-04-30
      【学习笔记】对vanilla的一些个人理解 2019-04-30
      【解决错误】json.decoder.JSONDecodeError: Expecting value: line 11 column 14 (char 82) 2019-04-30
      【解决错误】The size of tensor a (8) must match the size of tensor b (64) at non-singleton dimension 1 2019-04-30
      word文档中实现目录索引中标题加粗,前导符和页码不加粗 2019-04-30
      “学硕” VS “专硕” 2019-04-30
      【NLP学习笔记】知识图谱阅读笔记及其心得 2019-04-30