假设你的文本文件是 C:\1.txt
假设文件中“我“和“i"之间的间隔是 Tab
那么代码如下
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm1 = class(TForm)
Edit1: TEdit;
Button1: TButton;
Label1: TLabel;
procedure Button1Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
private
FList: TStrings;
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
begin
ShowMessage(FList.Values[Edit1.Text]);
end;
procedure TForm1.FormCreate(Sender: TObject);
var
s1,s2: TStrings;
i: Integer;
begin
FList := TStringList.Create;
s1 := TStringList.Create;
s2 := TStringList.Create;
s1.LoadFromFile('c:\1.txt');
for i := 0 to s1.Count - 1 do begin
s2.Clear;
s2.Delimiter := Char(VK_TAB);
s2.DelimitedText := s1.Strings[i];
if s2.Count = 2 then
FList.Values[s2.Strings[0]] := s2.Strings[1];
end;
s2.Free;
s1.Free;
end;
procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
FList.Free;
end;
end.
追问好像没有效果
追答我这里运行很正常 估计是你文件的格式不是以TAB分隔 要么文件路径错了