Un lugar de encuentro para los programadores de habla hispana

Un lugar de encuentro para los programadores de habla hispana

Buscar

Entrar

Puedes acceder utilizando tu cuenta de usuario del foro.

Si no dispone de cuenta, puede crear una accediendo al formulario de registro del foro.



Calcular el tamaño que nos ocupa un directorio Imprimir
Ideas - C++ Builder

Podemos hacer lo siguiente:
 
void __fastcall TForm1::Button1Click(TObject *Sender)
{
  TSearchRec sr;
  double tamanyo=0;
  int iAttributes = 0;
 
  if (FindFirst("c:\\windows\\*.*", iAttributes, sr) == 0)
  {
    tamanyo += sr.Size;
    while (FindNext(sr) == 0)
      tamanyo += sr.Size;
  }
  FindClose(sr);
  ShowMessage(tamanyo);
}
 
 
Si este directorio contiene otros subdirectorios, y también queremos conocer el espacio que nos ocupan en disco...
 
#include "Unit1.h"
//--------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
double size=0;
//--------------------------------------------------
double tamanyo(AnsiString Path)
{
  TSearchRec R;
  int F = FindFirst(Path + "\\*", faAnyFile, R);
  while(F==0)
  {
    if(R.Name != "." && R.Name != "..")
    {
      if(R.Attr == faDirectory)
        tamanyo(Path + "\\" + R.Name);
      else
        size+= R.Size;
    }
    F = FindNext(R);
  }
  FindClose(R);
  return size;
}
 
__fastcall TForm1::TForm1(TComponent* Owner): TForm(Owner)
{
Label1->Caption = AnsiString(tamanyo("c:\\mirc"));
}
 
 
Comentarios (0)
Para escribir un comentario debes estar registrado