Interfaz de manejo de archivos
ChatPROGRAM INTERFAZ;
uses crt;
procedure carpeta;
VAR
n,dir:string[10];
begin
{$I-}
clrscr;
gotoxy(32,13);write('CREAR CARPETA');
dir:='c:';
gotoxy(2,15);write('Nombre de la nueva carpeta: ');READLN(n);
dir:=concat(dir+n);
mkdir(dir);gotoxy(2,3);
if IOResult <> 0 then
begin gotoxy(2,17);write('No se pudo crear el directorio'); end
else
gotoxy(2,17);write('Ha sido creada la carpeta.. '); writeln(n);
GOTOXY(2,25);WRITE('Cualquier tecla para continuar ...');
READKEY;
end;
procedure copiar;
var dir,dir2:string;
arch,arch2:file of char;
c:char;
begin
clrscr;
gotoxy(32,13);write('COPIAR ARCHIVO');
gotoxy(2,15);write('Direccion del archivo original: ');read(dir);
readln;
gotoxy(2,17);write('Direccion donde se copiar el archivo: ');read(dir2);
{$I-}
assign(arch,dir);
assign(arch2,dir2);
reset(arch);gotoxy(2,15);
if IOresult <>0 then
begin gotoxy(2,19);write('archivo no encontrado'); end
else
begin
rewrite(arch2);
while not EOF(arch) do
begin
read(arch,c);
write(arch2,c);
WRITELN(c);
end;
close(arch);
close(arch2);
GOTOXY(2,19);write('Archivo copiado');
gotoxy(2,25);write('Tecla para continuar...');
end;
readkey;
end;
procedure cortar;
var
dir,dir2:string;
arch,arch2:file of char;
c:char;
begin
CLRSCR;
gotoxy(32,15);write('CORTAR ARCHIVO');
readln;
gotoxy(2,17);write('Direccion del archivo: ');read(dir);
READLN;
gotoxy(2,19);write('Direccion a mover el achivo: ');read(dir2);
{$I-}
assign(arch,dir);
assign(arch2,dir2);
reset(arch);gotoxy(2,4);
if ioresult =0 then
begin
rewrite(arch2);
while not EOF(arch) do
begin
read(arch,c);
write(arch2,c);
write(c);
end;
close(arch);
close(arch2);
erase(arch);
GOTOXY(2,21);WRITELN('Archivo exitosamente movido');
end
else
gotoxy(2,21);write('Archivo no encontrado');
gotoxy(2,25);WRITE('Tecla para continuar...');
readkey;
end;
procedure renombre;
var raiz,dir,dir2,nom,nom2:string;
arch:file;
begin
clrscr;
gotoxy(32,15);write('RENOMBRAR ARCHIVO');
readln;
gotoxy(2,17);write('Direccion del archivo: ');read(raiz);
readln;
gotoxy(2,19);write('Nombre del archivo: ');read(nom);
dir:=concat(raiz+nom);
readln;
gotoxy(2,21);WRITE('Nuevo nombre para el archivo: ');read(nom2);
assign(arch,dir);
dir2:=concat(raiz+nom2);
rename(arch,dir2);
gotoxy(2,23);writeLN('Archivo modificado...');
gotoxy(2,25); write('Cualquier tecla para continuar...');
readkey;
end;
procedure eliminar;
var
dir:string;
arch:file;
begin
clrscR;
gotoxy(32,15);write('ELIMINAR ARCHIVO');
gotoxy(2,17);write('Direccion del archivo: ');read(dir);
assign(arch,dir);
erase(arch);
gotoxy(2,19);write('Archivo eliminado...');
gotoxy(2,25);write('Cualquier tecla para continuar...');
reaDKEY;
end;
procedure mezcla;
var
dir,dir2,nom:string;
arch,arch2,arch3:file of char;
c:char;
LEC:STRING;
I:INTEGER;
begin
clrscR;
gotoxy(32,15);write('MEZCLAR ARCHIVOS');
GOTOXY(2,17);write('Direccion del archivo a mezclar: ');read(dir);
readln;
GOTOXY(2,19);write('Direccion del otro archivo a mezclar: ');read(dir2);
readln;
GOTOXY(2,21);write('Nombre del nuevo archivo: ');read(nom); DELAY(150);
GOTOXY(1,30);
{$I-}
assign(arch,dir);
reset(arch);
assign(arch3,concat('c:'+ nom ));
rewrite(arch3);
if IOresult = 0 then
begin
while not EOF(arch) do
begin
read(arch,c);
write(arch3,c);
WRITE(C);
end;
close(arch);
FOR I:=1 TO 50 DO
WRITE(ARCH3,LEC[I]);
assign(arch2,dir2);
reset(arch2);
if IOresult =0 then
begin
while not EOF(arch2) do
begin
read(arch2,c);
write(arch3,c);
WRITE(C);
end;
close(arch2);
close(arch3);clrscr;
gotoxy(2,17);writeLN('Mezcla lista...');
gotoxy(2,25);write('Cualquier tecla para continuar...');
readkey;
end
else
gotoxy(2,24);write('El segundo archivo no se encontr¢...');
end
else
gotoxy(2,24);write('El primer archivo no se encontr¢... ');
end;
procedure lista;
var
dir:string;
arch,arch2:file of char;
c:char;
begin
clrscr;
gotoxy(32,15);write('LISTADO DEL ARCHIVOS');
gotoXY(2,17);write('Direccion: ');read(dir);
{$I-}
assign(arch,dir);
reset(arch);
assign(arch2,'c:aux.txt');
if ioresult = 0 then
begin
IF FILESIZE(ARCH)>2048 THEN
begin
CLRSCR;
writELN('-------Listado del archivo ',dir,'------------------');
DELAY(150);
end;
while not EOF(arch) do
begin
read(arch,c);
write(c);
delay(50);
end;
end
else
begin
gotoxy(2,19);write('El archivo no se encontr¢');
end;
readkey;
end;
var opc:char;
begin
Textmode(c80);
REPEAT
clrscr;
textbackground(white);
textcolor(red);GOTOXY(25,3);WRITE('************INTERFAZ************');
TEXTCOLOR(0);GOTOXY(34,4);WRITE(' E IT ');TEXTCOLOR(15);GOTOXY(40,4); WRITE('X');
TEXTCOLOR(green);
GOTOXY(1,5);WRITE('É���������������������� EDUARDO ALEXANDER PEREZ CARRILLO ����������������������»');
GOTOXY(1,6);WRITE('º º');
GOTOXY(1,7);WRITE('º º');
GOTOXY(1,8);WRITE('º º');
GOTOXY(1,9);WRITE('º º');
GOTOXY(1,10);WRITE('� ������������������������������������������������������������������������������¼');
TEXTCOLOR(black);
GOTOXY(11,6);WRITE('Cr ar carpeta.¯¯¯¯¯¯¯¯¯¯¯¯¯¯Å');textcolor(red); gotoxy(13,6);write('e');textcolor(0);
gotoxy(40,6);writeln('®®®®®®®®®®®®®® opiar archivos.');textcolor(red); gotoxy(55,6);write('C');textcolor(0);
GOTOXY(9,7);WRITE('C rtar archivos.¯¯¯¯¯¯¯¯¯¯¯¯¯¯Å'); textcolor(red); gotoxy(10,7);write('o');textcolor(0);
gotoxy(40,7);writeln('®®®®®®®®®®®®®® enombrar archivos.'); textcolor(red); gotoxy(55,7);write('R');textcolor(0);
gotoxy(8,8);write(' ezclar archivos.¯¯¯¯¯¯¯¯¯¯¯¯¯¯Å'); textcolor(red); gotoxy(8,8);write('M');textcolor(0);
gotoxy(40,8);writeln('®®®®®®®®®®®®®® El minar archivos.'); textcolor(red); gotoxy(57,8);write('i');textcolor(0);
gotoxy(8,9); write('®®®®®®®®®®®®®®®®®®®®®®®® istar archivos ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯');
textcolor(red); gotoxy(33,9);write('L');textcolor(0);
opc:=upcase(readkey);
case opc of
'E':carpeta;
'C':copiar;
'O':cortar;
'R':renombre;
'I':eliminar;
'L':lista;
'M':mezcla;
end;
UNTIL(OPC='X');
end.