Skip to content

Commit

Permalink
[+] PathIsAbsolute, TrimFileExt
Browse files Browse the repository at this point in the history
  • Loading branch information
jackdp committed Apr 28, 2020
1 parent 1ba0ba8 commit 03711e3
Showing 1 changed file with 16 additions and 0 deletions.
16 changes: 16 additions & 0 deletions Base/JPL.Strings.pas
Original file line number Diff line number Diff line change
Expand Up @@ -144,7 +144,9 @@ function TrimENDL(const s: string): string; // removes trailing sLineBreak (ENDL
function TrimExtDot(const FileExtension: string): string;
function AddFileNameSuffix(const FileName, Suffix: string): string;
function AddFileNamePrefix(const FileName, Prefix: string): string;
function TrimFileExt(const FileName: string): string;
procedure SplitFileName(fName: string; out Dir, BaseFileName, Ext: string; bIncludePathDelimiter: Boolean = True; bRemoveDotFromExt: Boolean = False);
function PathIsAbsolute(const FileName: string): Boolean;

function GetDecimalSeparator: Char;

Expand All @@ -164,6 +166,15 @@ function GetDecimalSeparator: Char;
{$ENDIF}
end;

function PathIsAbsolute(const FileName: string): Boolean;
begin
{$IFDEF MSWINDOWS}
Result := (Length(FileName) >= 3) and CharInSet(FileName[1], ['A'..'Z','a'..'z']) and (FileName[2] = ':') and CharInSet(FileName[3], ['/', '\']);
{$ELSE}
// UNIX / Linux
Result := (Length(FileName) > 0) and (FileName[1] = '/');
{$ENDIF}
end;

function SplitStr(const InStr: string; out LeftStr, RightStr: string; const Separator: string): Boolean;
var
Expand Down Expand Up @@ -240,6 +251,11 @@ function AddFileNamePrefix(const FileName, Prefix: string): string;
Result := Dir + PathDelim + Prefix + ShortName + Ext;
end;

function TrimFileExt(const FileName: string): string;
begin
Result := ChangeFileExt(FileName, '');
end;

function TrimENDL(const s: string): string;
begin
Result := TrimFromEnd(s, ENDL);
Expand Down

0 comments on commit 03711e3

Please sign in to comment.