unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TForm1 = class(TForm) Button1: TButton; Edit1: TEdit; Button2: TButton; Edit2: TEdit; Button3: TButton; procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); procedure Button3Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject); var f:tfilestream; buf1,temp:string; buf: array [0..254] of char; //定义 i:integer; begin buf1 := edit1.Text; for i := 1 to 255 do begin buf[i-1]:=buf1[i]; end; f:=TfileStream.create(extractfilepath(application.ExeName)+'\test.exe',fmopenreadwrite); f.position:=f.size; f.write(buf,255); f.free; end; procedure TForm1.Button2Click(Sender: TObject); var f:tfilestream; buf1:string; buf: array [0..254] of char; //定义 i:integer; begin f:=TfileStream.create(extractfilepath(application.ExeName)+'\test.exe',fmopenread); f.position:=f.size-255; f.Read(buf,255); f.free; buf1:=buf; //for i := 1 to 19 do //begin // buf1[i]:=buf[i-1]; //end; edit2.Text := buf1; end; procedure TForm1.Button3Click(Sender: TObject); var ASource: PChar; AStr: String; ACount,i: Integer; AStrings: TStringList; begin //ASource := 'ABC|... DEF|#### GHI|"中华网URL|# www.china.com"'; ASource := PChar(edit2.Text); AStrings := TStringList.Create; try ACount := ExtractStrings(['#'], [' ','.','"'], ASource, AStrings); {do any further processing} //for AStr in AStrings do // Writeln(AStr); for i := 1 to ACount do begin showmessage(AStrings.Strings[i-1]); end; finally AStrings.Free; end; end; end.