uses
System
.
SysUtils, System
.
Classes, Vcl
.
Forms, Vcl
.
Controls, Vcl
.
StdCtrls, Vcl
.
Dialogs;
type
TForm1 =
class
(TForm)
EditFilePath: TEdit;
ButtonBrowse: TButton;
MemoRemark: TMemo;
ButtonSave: TButton;
OpenDialog1: TOpenDialog;
procedure
ButtonBrowseClick(Sender: TObject);
procedure
ButtonSaveClick(Sender: TObject);
procedure
FormCreate(Sender: TObject);
private
RemarksFileName:
string
;
procedure
LoadRemark(
const
FilePath:
string
);
procedure
SaveRemark(
const
FilePath, Remark:
string
);
public
end
;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure
TForm1
.
FormCreate(Sender: TObject);
begin
RemarksFileName := ExtractFilePath(ParamStr(
0
)) +
'descript.ion'
;
end
;
procedure
TForm1
.
ButtonBrowseClick(Sender: TObject);
begin
if
OpenDialog1
.
Execute
then
begin
EditFilePath
.
Text := OpenDialog1
.
FileName;
LoadRemark(EditFilePath
.
Text);
end
;
end
;
procedure
TForm1
.
LoadRemark(
const
FilePath:
string
);
var
Lines: TStringList;
i:
Integer
;
Line:
string
;
FileName:
string
;
begin
MemoRemark
.
Lines
.
Clear;
if
FileExists(RemarksFileName)
then
begin
Lines := TStringList
.
Create;
try
Lines
.
LoadFromFile(RemarksFileName);
FileName := ExtractFileName(FilePath);
for
i :=
0
to
Lines
.
Count -
1
do
begin
Line := Lines[i];
if
Pos(FileName +
' '
, Line) =
1
then
begin
MemoRemark
.
Lines
.
Text := Copy(Line, Length(FileName) +
2
, MaxInt);
Break;
end
;
end
;
finally
Lines
.
Free;
end
;
end
;
end
;
procedure
TForm1
.
SaveRemark(
const
FilePath, Remark:
string
);
var
Lines: TStringList;
i:
Integer
;
Line:
string
;
FileName:
string
;
Found:
Boolean
;
begin
Lines := TStringList
.
Create;
try
if
FileExists(RemarksFileName)
then
Lines
.
LoadFromFile(RemarksFileName);
FileName := ExtractFileName(FilePath);
Found :=
False
;
for
i :=
0
to
Lines
.
Count -
1
do
begin
Line := Lines[i];
if
Pos(FileName +
' '
, Line) =
1
then
begin
Lines[i] := FileName +
' '
+ Remark;
Found :=
True
;
Break;
end
;
end
;
if
not
Found
then
Lines
.
Add(FileName +
' '
+ Remark);
Lines
.
SaveToFile(RemarksFileName);
finally
Lines
.
Free;
end
;
end
;
procedure
TForm1
.
ButtonSaveClick(Sender: TObject);
begin
if
EditFilePath
.
Text <>
''
then
SaveRemark(EditFilePath
.
Text, MemoRemark
.
Lines
.
Text);
end
;
end
.