⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 helpers.pas

📁 一个老外写的P2P例子...有点简单
💻 PAS
字号:
unit Helpers;

interface

uses
  Classes;

const
  cPeers = 'Peers.txt';
  cRecipes = 'Recipes.txt';

procedure AddToFile(const AFileName, ALine: string);
function SearchFile(const AFileName, ASearch: string): string;
procedure DeleteFromFile(const AFileName, ALine: string);

implementation

uses SysUtils;

procedure AddToFile(const AFileName, ALine: string);
var
  f: TStringList;
begin
  f := TStringList.Create;
  try
    if FileExists(AFileName) then
      f.LoadFromFile(AFileName);
    f.Duplicates := dupIgnore;
    f.Add(ALine);
    f.SaveToFile(AFileName);
  finally
    f.free;
  end;
end;

function SearchFile(const AFileName, ASearch: string): string;
var
  f: TStringList;
  idx: Integer;
begin
  result := '';
  f := TStringList.Create;
  try
    if FileExists(AFileName) then
    begin
      f.LoadFromFile(AFileName);
      for idx := 0 to pred(f.Count) do
      begin
        if pos(UpperCase(ASearch),UpperCase(f[idx])) > 0 then
        begin
          result := f[idx];
          exit;
        end;
      end;
    end;
  finally
    f.free;
  end;
end;

procedure DeleteFromFile(const AFileName, ALine: string);
var
  f: TStringList;
  idx: Integer;
begin
  f := TStringList.Create;
  try
    if FileExists(AFileName) then
      f.LoadFromFile(AFileName);
    idx := f.IndexOf(ALine);
    if idx > -1 then
      f.Delete(idx);
    f.SaveToFile(AFileName);
  finally
    f.free;
  end;
end;


end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -