当前位置:首页>正文

delphi ini文件读写 Delphi如何将指定文件的内容读入

2023-04-11 14:35:35 互联网 未知

Delphi如何将指定文件的内容读入

INI文件在系统配置及应用程序参数保存与设置方面,具有很重要的作用,所以可视化的编程一族,如VB、VC、VFP、Delphi等都提供了读写INI文件的方法,其中Delphi中操作INI文件,最为简洁,这是因为Delphi提供了一个TInifile类,使我们可以非常灵活的处理INI文件
一.INI文件的结构
[小节名]ini文件
关键字1=值 关键子2=值INI文件允许有多个小节,每个小节又允许有多个关键字,“=”后面是该关键字的值。
值的类型有三种:字符串、整型数值和布尔值。其中字符串存贮在INI文件中时没有引号,布尔真值用1表示,布尔假值用0表示。
二、定义
1、 在Interface的Uses节增加IniFiles;
2、 在Var变量定义部分增加一行: myinifile:Tinifile
定义类的一个实例。然后,就可以对变量myinifile进行创建、打开、读取、写入等操作了。
三、打开INI文件
myinifile:=Tinifile.create(program.ini)
上面这一行语句将会为变量myinifile与具体的文件program.ini建立联系,然后,就可以通过变量myinifile,来读写program.ini文件中的关键字的值了。
值得注意的是,如果括号中的文件名没有指明路径的话,那么这个Program.ini文件会存储在Windows目录中,把Program.ini文件存储在应用程序当前目录中的方法是:为其指定完整的路径及文件名。下面的两条语句可以完成这个功能:
Filename:=ExtractFilePath(Paramstr
(0)) program.ini
myinifile:=Tinifile.Create(filename)
五、写入INI文件
同样的,TInifile类也提供了三种不同的对象方法,向INI文件写入字符串、整型数及布尔类型的关键字。

myinifile.writestring(小节名,关键字,变量或字符串值)
myinifile.writeinteger(小节名,关键字,变量或整型数值)
myinifile.writebool(小节名,关键字,变量或True或False)
当这个INI文件不存在时,上面的语句还会自动创建该INI文件。
六、删除关键字
除了可用写入方法增加一个关键字,Tinifile类还提供了一个删除关键字的对象方法:

myinifile.DeleteKey(小节名,关键字)
七、小节操作
增加一个小节可用写入的方法来完成,删除一个小节可用下面的对象方法:

myinifile.EraseSection(小节名)
另外Tinifile类还提供了三种对象方法来对小节进行操作:
myinifile.readsection(小节名,TStrings变量)可将指定小节中的所有关键字名读取至一个字符串列表变量中;
myinifile.readsections(TStrings变量)可将INI文件中所有小节名读取至一个字符串列表变量中去。
myinifile.readsectionvalues(小节名,TStrings变量)可将INI文件中指定小节的所有行(包括关键字、=、值)读取至一个字符串列表变量中去。
八、释放
在适当的位置用下面的语句释放myinifile:
myinifile.distory
下面是具体例子。源代码如下。创建了一个myini.ini文件,有一个名为newini的小节,有3个关键字“用户名称”“已运行时间”“是否正式用户”。运行效果,可以在edit1里边填入“用户名称”;edit2显示时间,不可以改变数值;checkbox1通过打勾,保存时间和“用户名称”进入myini.ini文件里边,重新打开应用程序时,显示的时保存下来的时间和填入的“用户名称”,如果在myini.ini文件里边修改,效果和在程序运行过程中修改时一样的。

unit Unit1

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs,inifiles, StdCtrls, ExtCtrls
{调用inifiles 类}

type
TForm1 = class(TForm)
Label1: TLabel
Label2: TLabel
Label3: TLabel
Edit1: TEdit
Edit2: TEdit
Timer1: TTimer
CheckBox1: TCheckBox
procedure FormCreate(Sender: TObject)
procedure FormDestroy(Sender: TObject)
procedure Timer1Timer(Sender: TObject)
private
{ Private declarations }
public
{ Public declarations }
end

var
Form1: TForm1

implementation
var
myinifile:TInifile
{定义一个类的实例}
{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject)

var
filename:string

begin
{下面两行的书写形式,在应用程序的路径下创建ini文件}
filename:=ExtractFilePath(paramstr(0)) myini.ini
myinifile:=TInifile.Create(filename)
edit1.Text:=myinifile.ReadString(newini,用户名称,胡长浩)
edit2.text:=inttostr(myinifile.readinteger
(newini,已运行时间,0))
checkbox1.Checked:=myinifile.readbool
(newini,是否正式用户,False)
{newini是小节名字,中间字段是关键字的名字,第三个字段是缺省值。当myini.ini不存在时,上面的语句自动创建这个文件,上边几行里的引号是单引号}
end

procedure TForm1.FormDestroy(Sender: TObject)
begin
myinifile.writestring(newini,用户名称,edit1.Text)
myinifile.writeinteger(newini,已运行时间,
strtoint(edit2.text))
myinifile.writebool(newini,是否正式用户,
checkbox1.Checked)
myinifile.Destroy

end

procedure TForm1.Timer1Timer(Sender: TObject)
begin
edit2.Text:=inttostr(strtoint(edit2.text) 1)
end
end.资料引用:file:///C:/Documents and Settings/winchan/桌面/delphi读取ini文件.mht

delphi创建文件和读取.ini文件怎么写

filecreate(路径加文件名);//创建一个文件。

读写ini文件:
先在 uses 定义 Inifiles, 在 var 定义 myinifile:Tinifile;

实现部分写代码:
myinifile:=Tinifile.create(d:1.ini)//打开D盘的 1.ini 文件。
myinifile.readstring(小节名,关键字,缺省值);//读取字符型数据。
myinifile.redainteger(小节名,关键字,缺省值)//读取整数型数据。
myinifile.readbool(小节名,关键字,缺省值)//读取逻辑型数据。

写入INI文件:
myinifile.writestring(小节名,关键字,变量或字符串值);//写入字符型数据。
myinifile.writeinteger(小节名,关键字,变量或整型数值)//写入整数型数据。
myinifile.writebool(小节名,关键字,变量或TRUE或FALSE)//写入逻辑型数

myinifile.Free;//释放INI文件。

Delphi如何将指定文件的内容读入

procedure TForm1.Button1Click(Sender: TObject)
begin
memo1.Lines.LoadFromFile(c:1.txt)
end

Delphi创建或读取Ini文件

1、TIniFile对象

 以Delphi中,定义了一个TIniFile对象,将.INI文件封装在其中,并提供一些方法,专门用来对INI文件进行读写操作。如果在程序中要用到TIniFile类或其方法属性,就必须在程序单元的uses语句中手工加入对IniFiles单元的引用。

2、Create方法

 该方法用来创建一个处理INI文件的TIniFile类型实例。

 方法声明:constructor Create(const FileName:string)

 参数说明:FileName指明待创建的INI文件的文件名;

 注释:在使用TIniFile对象之前,必须先用此方法创建一个INI文件的实例。FileName中可以包含路径名,缺省时为Windows所在目录(一般就是C:windows,对于Windows NT来说,则一般是c:winnt)。用Create方法创建的实例,在使用完之后,调用Free方法释放内存。

delphi如何读写二进制文件怎么解决

二进制是什么 0001 显示就是二进制 它可以转换十进制 1 其实它还是二进制

就算转换十六进制 1 还是二进制,,我们操作的都是二进制
转换过来只是为了看得更清楚 更明朗
二进制 0101 十进制 10 十六进制 A 你可以看ASCII 表
var
fs:TFileStream //定义fs 为文件流
buf:array[0..1024]of byte //定义buf 为数组 0至102
fs:=TFileStream.Create(file,frReadWrite) //初始化文件流 file 就是文件名如c:1.bmp frReadWrite 给读写的权限
fs.Read(buf,sizeof(buf)) //读文件流到buf sizeof取buf 大小