Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Raficcha

[Resolvido] Quebrar arquivo em partes

Recommended Posts

Esta função eu criei para ajudar um usuário do fórum e resolvi então colocar aqui no laboratório de scripts para quem precisar

 

 procedure QuebraArquivo(FileName: string; MaxSizeByte: LongInt = 524288);
 var
     Arq, Arq2 : file of byte;
     buffer: array [1 .. 524288] of byte;//buffer de 1MB
     bufferSize: integer;
     cont, cont2 : integer; 
 begin
     AssignFile(Arq, FileName);
     Reset(Arq);
     bufferSize := Length(buffer);
     cont := 0;
     while(not(eof(Arq))) do
     begin
         inc(cont);
         AssignFile(Arq2, FileName+inttostr(cont));
         Rewrite(Arq2);
         //faz duas leituras de 512Kb
         for cont2 := 1 to Round(MaxSizeByte/length(buffer))+1 do
         begin
             BlockRead(Arq, buffer, bufferSize, BufferSize);
             BlockWrite(Arq2, buffer, BufferSize, BufferSize);
         end;
         CloseFile(Arq2);
     end;
     CloseFile(Arq);
 end;

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.