Решил развлечься и написал парсер ссылок.
Файл с сылками Bookmarks находится обычно:
C:\Documents and Settings\ИМЯ ЮЗЕРА\Local Settings\Application Data\Amigo\User Data\Default.
Код не сложный,подстроенный именно под парсинг сылок из данного типа файлов.
Ссылки обрезанные до первого /, чтобы этого не происходило то строчку
b1 := '/'; надо переделать на b1 := '/'+'"'; И можно тогда избавиться от функции PosEx заменив её на pos.
На форму кинуть три кнопки,мемо и диалоги для открытия и сохранения)))
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, StrUtils;
type
TForm1 = class(TForm)
Memo1: TMemo;
Button1: TButton;
OpenDialog1: TOpenDialog;
SaveDialog1: TSaveDialog;
Button2: TButton;
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}
function parse(str, str2, stxt: string): string;
var
len, p1, p2: integer;
begin
len := length(str);
p1 := pos(str, stxt) + len;
p2 := PEosx(str2, stxt, p1+9) - pos(str, stxt) - len + 1;
result := Copy(stxt, p1, p2);
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
If OpenDialog1.Execute then
Memo1.Lines.LoadFromFile(OpenDialog1.FileName);
end;
procedure TForm1.Button2Click(Sender: TObject);
var a1, b1, prs, tkn : string;
i: Integer;
begin
Button3.Visible := False;
prs :='';
tkn :='';
a1 := 'url'+'"'+': '+'"';
b1 := '/';
for i:=0 to Memo1.Lines.Count-1 do
begin
prs := parse(a1, b1, Memo1.Lines[i]);
if prs <>'' then tkn := tkn+prs+ #13+#10 ;
end;
Memo1.Text := tkn;
Button3.Visible := True;
end;
procedure TForm1.Button3Click(Sender: TObject);
begin
If SaveDialog1.Execute then Memo1.Lines.SaveToFile(SaveDialog1.Filename);
end;
end.Вот как выглядит файл до и после обработки. Результат можно сохранить!!!

