DirectoryOperations (C++)
Description
This examples demonstrates the use of methods in TDirectory class to create, delete, copy a directory, or to check if the specified directory is empty.
Code
void __fastcall TForm1::btnIsEmptyClick(TObject *Sender)
{
try
{
/* Check if the specified directory is empty */
if (TDirectory::IsEmpty(edSourcePath->Text))
MessageDlg("The specified directory is empty", mtInformation, TMsgDlgButtons() << mbOK, NULL);
else
MessageDlg("The specified directory is not empty", mtInformation, TMsgDlgButtons() << mbOK, NULL);
}
catch (...)
{
/* Catch the possible exceptions */
MessageDlg("Incorrect path", mtError, TMsgDlgButtons() << mbOK, 0);
return;
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::btnCopyClick(TObject *Sender)
{
try
{
/* Copy directory from source path to destination path */
TDirectory::Copy(edSourcePath->Text, edDestinationPath->Text);
}
catch (...)
{
/* Catch the possible exceptions */
MessageDlg("Incorrect source path or destination path", mtError, TMsgDlgButtons() << mbOK, NULL);
return;
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::btnCreateClick(TObject *Sender)
{
try
{
/* Create directory to specified path */
TDirectory::CreateDirectory(edSourcePath->Text);
}
catch (...)
{
/* Catch the possible exceptions */
MessageDlg("Incorrect path", mtError, TMsgDlgButtons() << mbOK, NULL);
return;
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::btnDeleteClick(TObject *Sender)
{
Boolean isRecursive;
/* Check if the deletion method is recursive */
if (cbIsRecursive->Enabled)
isRecursive = true;
else
isRecursive = false;
try
{
/* Delete directory from specified path */
TDirectory::Delete(edSourcePath->Text, isRecursive);
}
catch (...)
{
/* Catch the possible exceptions */
MessageDlg("Incorrect path", mtError, TMsgDlgButtons() << mbOK, NULL);
return;
}
}
//---------------------------------------------------------------------------
Uses
- System.IOUtils.TDirectory.IsEmpty ( fr | de | ja )
- System.IOUtils.TDirectory.Copy ( fr | de | ja )
- System.IOUtils.TDirectory.CreateDirectory ( fr | de | ja )
- System.IOUtils.TDirectory.Delete ( fr | de | ja )