社区
Delphi
帖子详情
如何对文本文件进行操作?
ma7ht
2003-06-03 12:54:50
现在有一文本文件‘result.txt’,
里面的内容是
str1=10
str1=11.2
str2=5.4
…………
我现在想取出str1的值,判断它在哪一个范围内
请问该如何操作??
...全文
89
15
打赏
收藏
如何对文本文件进行操作?
现在有一文本文件‘result.txt’, 里面的内容是 str1=10 str1=11.2 str2=5.4 ………… 我现在想取出str1的值,判断它在哪一个范围内 请问该如何操作??
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
15 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
SimonSui
2003-06-04
打赏
举报
回复
用TPascal的方法不就行了吗???
Var
t:text;
Begin
Assign(t,'result.txt');
Reset(t);
Readln(t,字符串变量);
Close(t);
End.
microjuz
2003-06-04
打赏
举报
回复
楼上老兄说的对,治标要治本
存的时候改用ini格式存
以后就easy了哈~~
whitetiger8
2003-06-03
打赏
举报
回复
上面说完了。不过我想说一句,你存时为啥不用INI文件。
ma7ht
2003-06-03
打赏
举报
回复
当然文本文件的格式也可以适当改变,只要能表示出str(n)与其对应的值就可以了!
ma7ht
2003-06-03
打赏
举报
回复
我是想分别取出str1中最大的一个值
str2中最大的一个值
str3中最大的一个值
str4中最大的一个值
………………
………………
mrtxc
2003-06-03
打赏
举报
回复
以上好几位老兄的处理TXT文件的方法都可行,
不过我还是建议楼主:你的这种情况最好用INI文件。
Myfile:TINIFile;
hkbarton
2003-06-03
打赏
举报
回复
在str1=10
str1=11.2
str2=5.4中取10:
var
strlist:TStringList;
i:integer;
begin
strList:=TStringList.Create;
strList.LoadFormFile(result.Txt);
i:=strtoint(copy(strList[0],6,2));//i就是10了
end;
snake_eye
2003-06-03
打赏
举报
回复
楼主利用Int文件的格式:
INI文件的应用
INI文件在系统配置及应用程序参数保存与设置方面,具有很重要的作用,所以可视化的编程一族,如VB、VC、VFP、Delphi等都提供了读写INI文件的方法,其中Delphi中操作INI文件,最为简洁,这是因为Delphi3提供了一个TInifile类,使我们可以非常灵活的处理INI文件。
一、有必要了解INI文件的结构:
;注释
[小节名]
关键字=值
...
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文件支持的字符串、整型数值、布尔值三种数据类型,TINIfiles类提供了三种不同的对象方法来读取INI文件中关键字的值。
假设已定义变量vs、vi、vb分别为string、 integer、boolean类型。
vs:=myinifile.Readstring(’小节名’,’关键字’,缺省值);
vi:=myinifile.Readinteger(’小节名’,’关键字’,缺省值);
vb:=myinifile.Readbool(’小节名’,’关键字’,缺省值);
其中缺省值为该INI文件不存在该关键字时返回的缺省值。
五、写入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;
九、一个实例
下面用一个简单的例子(如图),演示了建立、读取、存贮INI文件的方法。myini.ini文件中包含有“程序参数”小节,和用户名称(字符串)、是否正式用户(布尔值)和已运行时间(整型值)三个关键字。程序在窗体建立读取这些数据,并在窗体释放时写myini.ini文件。
附源程序清单
unit Unit1;
interface
uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,inifiles,StdCtrls, ExtCtrls;
type
TForm1 = class(TForm)
Edit1: TEdit;
CheckBox1: TCheckBox;
Edit2: TEdit;
Label1: TLabel;
Label2: TLabel;
Timer1: TTimer;
Label3: TLabel;
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
filename:=ExtractFilePath(paramstr(0))+’myini.ini’;
myinifile:=TInifile.Create(filename);
edit1.Text:= myinifile.readstring(’程序参数’,’用户名称’,’缺省的用户名称’);
edit2.text:= inttostr(myinifile.readinteger(’程序参数’,’已运行时间’,0));
checkbox1.Checked:= myinifile.readbool(’程序参数’,’是否正式用户’,False);
end;
procedure TForm1.FormDestroy(Sender: TObject);
begin
myinifile.writestring(’程序参数’,’用户名称’,edit1.Text);
myinifile.writeinteger(’程序参数’,’已运行时间’,strtoint(edit2.text));
myinifile.writebool(’程序参数’,’是否正式用户’,checkbox1.Checked);
myinifile.Destroy;
end;
procedure TForm1.Timer1Timer(Sender: TObject);
begin
edit2.Text:=inttostr(strtoint(edit2.text)+1);
end;
end.
pandengzhe
2003-06-03
打赏
举报
回复
up!
DelUser
2003-06-03
打赏
举报
回复
TIniFile
MyCrooner
2003-06-03
打赏
举报
回复
strList : TStringList.Create;
strList.LoadFormFile(result.Txt);
for i:=0 to strList.Count do
//在这儿处理strList[i]
Dingll
2003-06-03
打赏
举报
回复
var
MyTextFile:TTextFile;
s:string;
str1;string;
begin
AssignFile(MyTextFile,'result.txt');
Reset(MyTextFile);
Try
ReadLn(MyTextFile,s);
finally
closeFile(MyTextFile);
end;
str1:=copy(s,6,7);
end;
firetoucher
2003-06-03
打赏
举报
回复
1 定义一个MAP结构,包括名称和值,并写file io函数,然后操作
2 用TINIFile
microjuz
2003-06-03
打赏
举报
回复
关注关注
Dingll
2003-06-03
打赏
举报
回复
var
MyTextFile:TTextFile;
Android 文本阅读器源代码
这款名为"TxtReader"的阅读器主要用于读取TXT格式的
文本文件
,是Android开发中的一个典型示例。下面将详细介绍这款应用涉及到的核心知识点。 1. **Android Studio**:作为Android开发的主要集成开发环境,Android ...
将数字转换成文本的程序
根据具体的应用,可能还需要对文本
进行
格式化,比如千分位分隔符、大写数字等。 **二、C#代码示例(以frmTesten.Frm和Testen.Vbp文件为例)** 虽然没有提供具体的frmTesten.Frm和Testen.Vbp文件内容,但我们可以...
Fp4autl.dll,Fpencode.dll,Fp4awel.dll
"readme.txt"文件可能是包含详细步骤或解释的
文本文件
,指导用户如何正确处理这些DLL文件。通常,它会提供关于文件的用途、安装位置以及任何特殊注意事项的信息。在处理此类问题时,仔细阅读并遵循readme文件中的...
C#常用类库(100多个)
"C#常用类库(100多个)"这个资源包涵盖了众多实用的编程领域,包括文件处理、网络通信、HTTP交互、多线程、UI控件、Office文档
操作
、输入/输出(I/O)
操作
、JSON序列化与反序列化、压缩与解压、文本处理、正则表达式...
删除输入框的文字
此外,为了在文本为空时显示删除图标,可以在文本改变时动态更新图标: ```java editText.addTextChangedListener(new TextWatcher() { @Override public void beforeTextChanged(CharSequence s, int start, int...
Delphi
5,934
社区成员
262,942
社区内容
发帖
与我相关
我的任务
Delphi
Delphi 开发及应用
复制链接
扫一扫
分享
社区描述
Delphi 开发及应用
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章