📄 howto_getfileline.htm
字号:
<html><head><title>如何打开文本文件并读取他的每一行数据</title><meta http-equiv=Content-Type content=text/html; charset=gb2312><meta name=GENERATOR content=Microsoft FrontPage 3.0><meta name=Microsoft Border content=none></head><body style=font-family: 宋体, serif; font-size: 9pt><center><span style=font-family: 宋体, serif; font-size: 12pt><b>如何打开文本文件并读取他的每一行数据</b></span></center><center><span style=font-family: 宋体, serif; font-size: 9pt>西安 <a href=mailto:delphifan@990.net>梁 明</a></span></center><hr><ul> <li><font color=#008000><span style=font-family: 宋体, serif; font-size: 9pt>回答问题--- 希望所有的DELPHI爱好者相互交流,共同提高!<br> 祝大家学习进步!!!</span></font></li> <li><span style=font-family: 宋体, serif; font-size: 9pt><<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<br> 你好:<br> 非常高兴看到你的主页。并得知你在DELPHI方面有一定经验,因此冒昧向你<br> 请教。我是一个DELPHI的初学者,现有一问题如下:<br> 设置一字符型数组,让此数组在不同条件下能读入相应TXT文件的内容,并且数组<br> 单元与TXT文件的每一行(共500行)内容对应。<br> 本人曾用invisible的memo做为中介实现此功能,但我不认为这是正确的方法。<br> 并且,在实现两个数组与TXT文件中同一行用分隔符分隔的内容对应时出现困难。<br> <br> 以下为本人程序中的笨办法的一段:<br> <br> procedure TForm1.Button1Click(Sender: TObject);<br> begin<br> begin<br> if button1.caption = 'english' then<br> <br> memo1.lines.loadfromfile('c:\deltt1.txt')<br> <br> else<br> memo1.lines.loadfromfile('c:\deltt2.txt');<br> end;<br> <br> button1.caption:= memo1.lines[0];<br> label1.caption:= memo1.lines[1];<br> label2.caption:= memo1.lines[2];<br> <br> end;<br> <br> 本人学浅,请高手赐教,并可否提供相应的源程序段。不胜感激!<br> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>><br> 。 </span></li> <li><span style=font-family: 宋体, serif; font-size: 9pt><b>下面是源代码:<br> </b></span></li> <li><span style=font-family: 宋体, serif; font-size: 9pt>unit Main;<br> <br> interface<br> <br> uses<br> Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,<br> StdCtrls;<br> <br> type<br> TForm1 = class(TForm)<br> Button2: TButton;<br> OpenDialog1: TOpenDialog;<br> Button1: TButton;<br> procedure Button2Click(Sender: TObject);<br> procedure Button1Click(Sender: TObject);<br> private<br> { Private declarations }<br> public<br> { Public declarations }<br> end;<br> <br> var<br> Form1: TForm1;<br> <br> implementation<br> <br> {$R *.DFM}<br> <br> procedure TForm1.Button2Click(Sender: TObject);<br> var<br> F: TextFile; {设定为文本文件}<br> StrLine: string; {every Line string}<br> SArray:array [0..500] of string; {String array,由于可能不只500行,<br> 因此最好定义为动态组......... }<br> line: Integer; {Text file's Line}<br> begin<br> if OpenDialog1.Execute then {Open file}<br> begin<br> AssignFile(F, OpenDialog1.FileName); {Create file}<br> Reset(F);<br> Line:=0;<br> while not SeekEof(f) do {文件没有 eof}<br> begin<br> if SeekEoln(f) then {每一Line}<br> Readln;<br> Readln(F, StrLine);<br> SArray[Line]:=StrLine;<br> Caption:=StrLine; {I debug use it}<br> if Line<500 then {If >500 Line...}<br> inc(Line) else<br> Break;<br> end;<br> CloseFile(F); {Close file}<br> end;<br> end;<br> <br> procedure TForm1.Button1Click(Sender: TObject);<br> begin<br> Application.MessageBox('请你千万注意两个问题:'+#13#10+<br> '1.有可能打开的文件远远不只500行;'+#13#10+<br> '2.涉及到文件的操作时要注意I/O出错'+#13#10+<br> '因此你务必提供相应的异常捕捉处理.'+#13#10#13#10+<br> ' 答一读者问 梁明1999-03',<br> '提示你',MB_DefButton1+MB_IconInformation+MB_OK);<br> end;<br> <br> end.<br> </span></li></ul><ul> <li><span style=font-family: 宋体, serif; font-size: 9pt><b>窗体As text代码</b></span></li> <li><span style=font-family: 宋体, serif; font-size: 9pt>object Form1: TForm1<br> Left = 192<br> Top = 107<br> Width = 279<br> Height = 168<br> Caption = '网易BBS朋友问--->梁明'<br> Color = clBtnFace<br> Font.Charset = DEFAULT_CHARSET<br> Font.Color = clWindowText<br> Font.Height = -11<br> Font.Name = 'MS Sans Serif'<br> Font.Style = []<br> OldCreateOrder = False<br> PixelsPerInch = 96<br> TextHeight = 13<br> object Button2: TButton<br> Left = 136<br> Top = 32<br> Width = 105<br> Height = 33<br> Caption = '读打开文件的行'<br> TabOrder = 0<br> OnClick = Button2Click<br> end<br> object Button1: TButton<br> Left = 136<br> Top = 77<br> Width = 105<br> Height = 33<br> Caption = '关于...'<br> TabOrder = 1<br> OnClick = Button1Click<br> end<br> object OpenDialog1: TOpenDialog<br> Filter = '文本文件(*.TXT)|*.TXT'<br> Title = '打开文本文件--->梁明'<br> Left = 48<br> Top = 32<br> end<br> end<br> </span></li></ul><ul> <li> </li> <li> </li> <li><span style=font-family: 宋体, serif; font-size: 9pt>版主:梁明<br> 日期:1999-03-07-03:05<br> E-mail:<a href=mailto:delphifan@990.net>delphifan@990.net</a></span></li></ul><hr></body></html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -