Rutinas para utilizar ficheros y carpetas con Firemonkey




A continuación les relaciono una serie de rutinas basadas en Firemonkey, asociadas con la utilización de ficheros y carpetas.
Realmente hay muchas más, pero como lo que quiero es que esta página les pueda ser útil, sólamente he puesto las que mas se usan cuando se programa.
Algunas realmente simplifican lo que antes teníamos en la VCL, como por ejemplo el obtener los ficheros de una carpeta, ya que con Firemonkey se puede hacer con una única instrucción:  TDirectory.GetFiles

Recordar que hay que añadir en el apartado "uses" la unit System.IOUtils 

- Obtener los ficheros de una carpeta
VAR
  DirList: TStringDynArray;
  S:String;
BEGIN

    DirList := TDirectory.GetFiles(DirPath, '*.jpg');
    IF Length(DirList) = 0 THEN
    BEGIN
    // showmessage('No hay ficheros en ' + DirPath)
    END
    ELSE // Ficheros encontrados
    BEGIN
      FOR S IN DirList DO
        BEGIN
             listbox1.items.add(S);
        END;
    END;
END;

- Obtener el tamaño de un fichero
FilesizeByName esta en la unit  IDGlobalProtocols


Tamano := FilesizeByName('c:\fichero.txt');

- Obtener la fecha de creación de un fichero
fecha := DatetimeToStr(Tfile.GetCreationTime('c:\fichero.txt'));

- Obtener la fecha del último acceso
fecha := DatetimeToStr(Tfile.GetLastAccessTime('c:\fichero.txt'));

- Obtener la fecha de la última modificación
fecha := DatetimeToStr(Tfile.GetLastWriteTime('c:\fichero.txt'));

- Guardar el contenido de un fichero en un string
var
s:string;
S := Tfile.ReadAllText('c:\fichero.txt'));

- Borrar un fichero
Tfile.Delete(TPath.Combine(DirPath, 'fichero.txt'));

- Comprobar que existe un fichero
if tFile.Exists(TPath.Combine(DirPath, 'fichero.txt')) 
then showmessage('Existe') 
else showmessage('NO existe');

- Copiar un fichero
tfile.Copy('c:\origen.jpg','c:\destino.jpg');

- Encriptar y desencriptar un fichero (sólo para Windows)
tfile.Encrypt('c:\fich.jpg');
tfile.Decrypt('c:\fich.jpg');

- Añadir texto a un fichero existente
texto:='texto que se quiere añadir';
TFile.AppendAllText('c:\fichero.txt',texto,tEncoding.utf8);

- Crear una carpeta
TDirectory.CreateDirectory(DirTMP);

- Comprobar que existe una carpeta
  IF TDirectory.Exists(DirTMP) THEN
  BEGIN
    showmessage('existe la carpeta');
  END;

- Copiar el contenido de una carpeta en otra
   TDirectory.Copy('c:\carpetaOrigen','c:\carpetaDestino')

- Borrar recursivamente el contenido de una carpeta
  BorrarRecursivamente:=true;
  tDirectory.Delete('c:\carpetaABorrar',BorrarRecursivamente);

- Obtener la fecha de creación de una carpeta
fecha := DatetimeToStr(TDirectory.GetCreationTime('c:\documentos'));

- Obtener la fecha del último acceso a una carpeta
fecha := DatetimeToStr(TDirectory.GetLastAccessTime('c:\documentos'));

- Obtener la fecha de la última modificación de una carpeta
fecha := DatetimeToStr(TDirectory.GetLastWriteTime('c:\documentos'));

También te puede interesar:

Rutinas gráficas con Firemonkey
Código para programadores Android
El directorio Home en tus aplicaciones Android
Funciones para trabajar con Word