Difference between revisions of "TFile.Exists"

From Soldat Community Wiki
Jump to: navigation, search
(Example)
m (Example: Removed invalid semicolon)
 
(One intermediate revision by one other user not shown)
Line 12: Line 12:
 
   Delete(Text, 1, 1); // remove command's slash
 
   Delete(Text, 1, 1); // remove command's slash
 
   try
 
   try
     if FileExists('~/' + Text + '.ini') then
+
     if File.Exists('~/' + Text + '.ini') then
       Player.WriteConsole('Yup, config for that map exists', $FFFFFFFF);
+
       Player.WriteConsole('Yup, config for that map exists', $FFFFFFFF)
 
     else
 
     else
 
       Player.WriteConsole('Sorry, this config for this map doesn''t exist', $FFFFFFFF);
 
       Player.WriteConsole('Sorry, this config for this map doesn''t exist', $FFFFFFFF);

Latest revision as of 16:05, 29 July 2013

function Exists(const Source: string): Boolean
 Source: a path to a file to check access for
 Result: Whenever file exists or not

Description

This function checks whenever file pointed by Source exists on hard drive. If the path is out of script's sandbox, EAccessViolation exception is thrown.

Example

procedure OnPlayerCommand(Player: TActivePlayer; Text: string);
begin
  // Assuming config Sandboxed=2 (default)
  Delete(Text, 1, 1); // remove command's slash
  try
    if File.Exists('~/' + Text + '.ini') then
      Player.WriteConsole('Yup, config for that map exists', $FFFFFFFF)
    else
      Player.WriteConsole('Sorry, this config for this map doesn''t exist', $FFFFFFFF);
  except    
    Player.WriteConsole('Wrong path (you added ../ a few times, didn''t you?)', $FFFFFFFF);
  end;
end;