INI文件

2024-05-01

INI文件(精选四篇)

INI文件 篇1

1 INI文件概述

Windows INI文件,可解释为Windows初始化文件。它是一种专门用来保存应用程序初始化信息和运行环境信息的文本文件。例如Windows 3.1中两个著名的INI文件win.ini和system.ini就在Windows启动时定义了Windows环境中鼠标响应速度、使用的外壳(shell)程序等设置。Windows系统附带的许多应用程序也都有自己的INI文件,例如控制面板的INI文件为control.ini,它也同样定义了控制面板的有关设置。ini文件是一种文本文件,它可以通过Notepad等文本编辑器进行编辑。ini文件具有特定的格式。一个INI文件是由若干个段(section)组成的,每个段中包含若干关键字(key)及相应的值(value)。段的格式如下:

其中Section Name和Key Name分别是段名和关键字名,Value为关键字对应的设定值。需要加以注意的是:

(1)段名必须加以“[”和“]”,且“[”必须在屏幕的第一列;

(2)关键字名也必须从屏幕的第一列开始书写,且后面必须紧跟“=”;

(3)可以对文件加以注释,每行注释须以“;”开头。

在Windows中,可以通过手工编辑INI文件来改变应用程序设置。如要想将Windows的外壳程序改为文件管理器,则可将system.ini中[boot]段下的“shell=progman.exe”改为“shell=winfile.exe”。有些设置也可以直接在应用程序界面上更改,但实际上也是通过修改INI文件来保存这些修改的。

2 在VB中操作INI文件的几个Windows API函数

在开发应用程序时,我们可以创建应用程序自己的INI文件,通过INI文件保存应用程序的一些运行环境信息,然后在程序中读取I-NI文件中的设置信息并据以处理。一旦程序的运行环境需要变更,则可以通过直接修改INI文件或在程序中提供专门的界面间接地修改I-NI文件来保证程序的可用性。

VB(Visual Basic)语言是近年来十分流行的一种面向对象的编程语言,但VB本身并不提供操纵INI文件的函数。所幸的是,VB支持DLL(Dynamic Link Library)的调用。(一个DLL事实上就是一个可供其它支持DLL调用的应用程序调用的外部函数集。)DLL中的函数称为API(应用编程接口,Application Programming Interface)函数。可以通过调用相应的API函数来实现操纵INI文件的功能。下面列出了相关的API函数及其说明。在使用这些函数之前,必须首先在VB的模块文件(.bas)中用Declare语句对它们进行声明。

3 实例分析

下面就参加教学办公自动化(OA)系统开发的实践介绍一下具体的实现方法。假定项目文件为man.mak,对应的INI文件为man.ini,其部分内容如下:

[数据库]

文件名=DEC_LX5120DBOA.mdb

[开户银行]

类型数=3

B1=中国人民银行

B2=中国农业银行

B3=中国工商银行

3.1 在程序启动时(执行SUB MAIN()和SUB FORM_LOAD()),从man.ini文件中读取相应的值并进行以后的操作。其中SUB MAIN()中的有关代码如下:

Dim Db Name as String*255'数据库名

Dim n as Integer

'得到INI文件名,INIfile Name为一全局变量

'从man.ini中读取数据库文件名

n=Get Private Profile String(“数据库”,“文件名”,“”,Db Name,Len(Db Name),INIfile Name)

Db Name=Left(Db Name,n)

'打开数据库,Db为一全局变量Set Db=Open Database(Db Name)

在FORM_LOAD()过程中,读取了man.ini中有关的内容并加入相应的组合框(Combo Box)列表中。这里只给出对“[开户银行]”段的相应操作,代码如下:

Dim Bank Count as Integer'银行类型数

Dim Bank Name as String*255'银行名

'读取原有银行类型数

Bank Count=Get Private Profile Int(“开户银行”,“类型数”,0,INIfile Name)

'读取银行名并加入到组合框cmb Bank中For I=1 to Bank Count

n=Get Private Profile String(“开户银行”,“B”&i,Bank Name,Len(Bank Name),INIfile Name)

Bank Name=Left(Bank Name,n)

cmb Bank.Add Item Bank Name

Next I

2.2在程序中提供了一个专用维护界面,该界面通过操作INI文件的相应内容来实现相应的修改。

'下面代码实现数据库路径的修改

Dim n as Integer

'txt Db Name.Text对应新的数据库文件名

If txt Db Name.Text=“”Then

Msg Box“数据库文件名不能为空!”,MB_ICONSTOP,App.Title

txt Db Name.Set Focus

Exit SubElse

'修改数据库文件名

n=Write Private Profile String(“数据库”,“文件名”,txt Db Name.Text,INIfile Name)

End If

'下面代码往组合框“开户银行”中增加一个新银行

Dim New Bank as String'新银行名

Dim Bank Count as Integer'银行类型数

Dim I as Integer,n as Integer

'输入新银行名

New Bank=Input Box(“增加开户银行。”,App.Title,“”)

If New Bank=“”Then

Msg Box“银行名不能为空!”,MB_ICON-STOP,App.Title

Exit Sub

Else

'判断输入的银行名是否已存在于列表中

For I=0 to cmb Bank.ListCount-1

If New Bank=cmb Bank.List(i)Then

'存在则终止

Msg Box New Bank&“已存在于列表中!”,MB_ICONSTOP,App.Title)

Exit Sub

End If

Next I

'读取原银行类型数

Bank Count=Get Pri Vate Profile Int(“开户银行”,“类型数”,0,INIfile Name)

'将银行类型数增1

n=Write Private Profile String(“开户银行”,“类型数”,Str(Bank Count),INIfile Name)

'将新银行名写入INI文件中

n=Write Private Profile String(“开户银行”,“B”&Bank Count,New Bank,INIfile Name)

End If

4 结语

综上所述,在实际的VB应用程序开发中,适当地利用INI文件,可以很好地改善程序的可维护性和可用性。尤其在数据库访问中使用INI文件可使用户在数据库路径改变时免去修改原代码之苦。在实际开发中,若结合一定的维护界面,也可使应用程序容易维护,增强友好性。

参考文献

[1]沈建蓉,单贵.大学VB程序设计实践教程[M].上海:复旦大学出版社,2005:35-63。

[2]唐兵,乔丰立,李桂花等.Visual Basic程序设计教程[M].北京:机械工业出版社,2005:87-120.

Python读写ini文件的方法 篇2

这篇文章主要介绍了Python读写ini文件的方法,实例分析了Python针对ini配置文件的读写及修改等操作技巧,需要的朋友可以参考下

本文实例讲述了Python读写ini文件的方法,分享给大家供大家参考。具体如下:

比如有一个文件update.ini,里面有这些内容:

[ZIP]EngineVersion=0DATVersion=5127FileName=dat-5127.zipFilePath=/pub/antivirus/datfiles/4.x/FileSize=13481555Checksum=6037,021EMD5=aaeb519d3f276b810d46642d782d8921

那就可以通过下面这些代码得到MD5的值,简单吧

#!/usr/bin/env python# -*- coding: utf-8 -*-import ConfigParserconfig = ConfigParser.ConfigParser()config.readfp(open(‘update.ini‘))a = config.get(”ZIP“,”MD5“)print a

写也很简单:

import ConfigParserconfig = ConfigParser.ConfigParser()# set a number of parametersconfig.add_section(”book“)config.set(”book“, ”title“, ”the python standard library“)config.set(”book“, ”author“, ”fredrik lundh“)config.add_section(”ematter“)config.set(”ematter“, ”pages“, 250)# write to fileconfig.write(open(‘1.ini‘, ”w“))

修改也不难(添加内容):

#!/usr/bin/env python# -*- coding: utf-8 -*-import ConfigParserconfig = ConfigParser.ConfigParser()config.read(‘1.ini‘)a = config.add_section(”md5“)config.set(”md5“, ”value“, ”1234“)config.write(open(‘1.ini‘, ”r+“)) #可以把r+改成其他方式,看看结果:)

修改内容:

#!/usr/bin/env python# -*- coding: utf-8 -*-import ConfigParserconfig = ConfigParser.ConfigParser()config.read(‘1.ini‘)config.set(”md5“, ”value“, ”kingsoft“) #这样md5就从1234变成kingsoft了config.write(open(‘1.ini‘, ”r+"))

删除部分就懒得写了,感兴趣的自己看文档:

remove_option(section, option)

Remove the specified option from the specified section. If the section does not exist, raise NoSectionError. If the option existed to be removed, return True; otherwise return False. New in version 1.6.

remove_section(section)

Remove the specified section from the configuration. If the section in fact existed, return True. Otherwise return False.

INI文件 篇3

在开发前后两个版本文件收发软件过程中, 席位的设置如图1所示为树状结构。编程实现时在VC中分别用XML和INI格式管理树状结构的席位, 存储的同一个席位配置文件命名为position.xml与position.ini, 其格式分别如图2和图3所示。

可以看出, INI文件适合席位配置层级不多, 最好是只有两层的配置文件, 例如“1教室—计算机1”, “1教室—计算机2”, 等。这种管理方式对于层级处理简单的情况比较适用, 特点是加载速度快, 简单明了, 席位配置文件可以当作文本文件来使用, 编辑修改容易, 可在记事本、写字板等工具中编辑修改, 不需编写专门的席位配置工具。而使用XML文件可配置存储多个层次的席位, 例如“教室—1教室—计算机1”, “教室—1教室—计算机2”等, 包括3个层级。这种管理方式适用于较复杂、有众多继承关系的席位配置情况, 对于比较大的项目可以考虑使用XML进行各种配置文件的管理, 特点是使用XML加载后就包含完整的层次关系, 而且支持的层次关系可以包含任意多层。XML是目前最好的用于保存各种信息的格式, 而且现在对它的支持也越来越广泛, 所以最好选择用XML。

2 读写INI文件

主要采用Win32环境下的GetPrivateProfileInt () , GetPrivateProfileString () 等API来实现读取INI文件, 这里介绍读写INI生成席位树的方法。

3 读写XML文件

INI文件 篇4

在VB应用程序中使用INI文件的体会

作者:hsboy 中国软件开发中心

摘要 结合实例介绍了在VB中调用Windows API函数操作初始化文件的方法和优点.

关键词 VB Windows API INI文件

一、INI文件概述

Windows INI文件,可解释为Windows初始化文件。它是一种专门用来保存应用程序初始化信息和运行环境信息的文本文件。例如Windows 3.1中两个著名的INI文件win.ini和system.ini就在Windows启动时定义了Windows环境中鼠标响应速度、使用的外壳(shell)程序等设置。Windows系统附带的许多应用程序也都有自己的INI文件,例如控制面板的INI 文件为control.ini,它也同样定义了控制面板的有关设置。ini文件是一种文本文件,它可以通过Notepad等文本编辑器进行编辑。ini文件具有特定的格式。一个INI文件是由若干个段(section)组成的,每个段中包含若干关键字(key)及相应的值(value)。段的格式如下:

[SectionName]

KeyName=Value

其中SectionName和KeyName分别是段名和关键字名,Value为关键字对应的设定值。需要加以注意的是:

(1)段名必须加以“[”和“]”,且“[”必须在屏幕的第一列;

(2)关键字名也必须从屏幕的第一列开始书写,且后面必须紧跟“=”;

(3)可以对文件加以注释,每行注释须以“;”开头。

在Windows中,可以通过手工编辑INI 文件来改变应用程序设置。如要想将Windows的外壳程序改为文件管理器,则可将system.ini中[boot]段下的“shell=progman.exe”改为“shell=winfile.exe”。有些设置也可以直接在应用程序界面上更改,但实际上也是通过修改INI文件来保存这些修改的。

二、在VB中操作INI文件的几个Windows API函数

在开发应用程序时,我们可以创建应用程序自己的INI文件,通过INI文件保存应用程序的一些运行环境信息,然后在程序中读取INI文件中的设置信息并据以处理。一旦程序的运行环境需要变更,则可以通过直接修改INI文件或在程序中提供专门的界面间接地修改INI文件来保证程序的可用性。

VB(Visual Basic)语言是近年来十分流行的一种面向对象的编程语言,但VB本身并不提供操纵INI文件的函数。所幸的是, VB支持DLL(Dynamic Link Library)的调用。(一个DLL事实上就是一个可供其它支持DLL调用的应用程序调用的外部函数集。)DLL中的函数称为API(应用编程接口,Application Programming Interface)函数。我们可以通过调用相应的API函数来实现操纵INI文件的功能。下面列出了相关的API函数及其说明。在使用这些函数之前,必须首先在VB的模块文件(.bas)中用Declare语句对它们进行声明。

三、实例分析

下面就笔者参加天津财经学院教学办公自动化(OA)系统开发的实践介绍一下具体的实现方法。假定项目文件为man.mak,对应的INI文件为man.ini,其部分内容如下:

[数据库]

文件名=DEC_LX5120DBOA.mdb

[开户银行]

类型数=3

B1=中国人民银行

B2=中国农业银行

B3=中国工商银行

1. 在程序启动时(执行SUB MAIN()和SUB FORM_LOAD()),从man.ini文件中读取相应的值并进行以后的操作。其中SUB MAIN()中的有关代码如下:

Dim DbName as String*255 ’数据库名

Dim n as Integer

’得到INI文件名,INIfileName为一全局变量

INIfileName=App.Path&“”&app.ExeName&“.ini”

’从man.ini中读取数据库文件名

n=GetPrivateProfileString(“数据库”,“文件名”,“”,DbName,Len(DbName),INIfileName)

DbName=Left(DbName,n)

’打开数据库,Db为一全局变量

Set Db=OpenDatabase(DbName)

在FORM_LOAD()过程中,读取了man.ini中有关的内容并加入相应的组合框(Combo Box)列表中,

这里只给出对“[开户银行]”段的相应操作,代码如下:

Dim BankCount as Integer ’银行类型数

Dim BankName as String*255 ’银行名

Dim i as Integer,n as Integer

’读取原有银行类型数

BankCount=GetPrivateProfileInt(“开户银行”,“类型数”,0,INIfileName)

’读取银行名并加入到组合框cmbBank中

For I=1 to BankCount

n=GetPrivateProfileString(“开户银行”,“B”&i,BankName,Len(BankName),INIfileName)

BankName=Left(BankName,n)

cmbBank.AddItem BankName

Next I

2. 在程序中提供了一个专用维护界面,该界面通过操作INI文件的相应内容来实现相应的修改。

’下面代码实现数据库路径的修改

Dim n as Integer

’txtDbName.Text对应新的数据库文件名

If txtDbName.Text=“” Then

MsgBox “数据库文件名不能为空!”,MB_ICONSTOP,App.Title

txtDbName.SetFocus

Exit Sub

Else

’修改数据库文件名

n=WritePrivateProfileString(“数据库”,“文件名”,txtDbName.Text,INIfileName)

End If

’下面代码往组合框“开户银行”中增加一个新银行

Dim NewBank as String ’新银行名

Dim BankCount as Integer ’银行类型数

Dim I as Integer,n as Integer

’输入新银行名

NewBank=InputBox(“增加开户银行。”,App.Title,“”)

If NewBank=“” Then

MsgBox “银行名不能为空!”,MB_ICONSTOP,App.Title

Exit Sub

Else

’判断输入的银行名是否已存在于列表中

For I=0 to cmbBank.ListCount-1

If NewBank=cmbBank.List(i) Then

’存在则终止

MsgBox NewBank&“已存在于列表中!”,MB_ICONSTOP,App.Title)

Exit Sub

End If

Next I

’读取原银行类型数

BankCount=GetPriVateProfileInt(“开户银行”,“类型数”,0,INIfileName)

’将银行类型数增1

BankCount=BankCount+1

n=WritePrivateProfileString(“开户银行”,“类型数”,Str(BankCount),INIfileName)

’将新银行名写入INI文件中

n=WritePrivateProfileString(“开户银行”,“B”&BankCount,NewBank,INIfileName)

End If

四、结论

综上所述,在实际的VB应用程序开发中,适当地利用INI文件,可以很好地改善程序的可维护性和可用性。尤其在数据库访问中使用INI文件可使用户在数据库路径改变时免去修改原代码之苦。在实际开发中,若结合一定的维护界面,也可使应用程序容易维护,增强友好性。

上一篇:微课程本科教学下一篇:需求及模式