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'));
No hay comentarios:
Publicar un comentario