Delphi-PRAXiS
Seite 3 von 4     123 4      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi 150 MB Datei erstellen immer in 256byte schritten? (https://www.delphipraxis.net/78962-150-mb-datei-erstellen-immer-256byte-schritten.html)

R0BIN 13. Okt 2006 22:34

Re: 150 MB Datei erstellen immer in 256byte schritten?
 
also bis jetzt hat noch keine möglichkeit so richtig funktioniert...

nein es müssen nicht unbedingt zahlen sein...nur unterschiedliche zeichen...

Zacherl 13. Okt 2006 22:35

Re: 150 MB Datei erstellen immer in 256byte schritten?
 
Das Konzept ist schwierig ... man müsste in die Schleife noch einberechnen, wie viele Bytes eine Zahl hat ...

Mackhack 13. Okt 2006 22:35

Re: 150 MB Datei erstellen immer in 256byte schritten?
 
Zitat:

Zitat von R0BIN
also bis jetzt hat noch keine möglichkeit so richtig funktioniert...

nein es müssen nicht unbedingt zahlen sein...nur unterschiedliche zeichen...

Dann mach 0-9 und a-z und A-Z dann kannst ja denk ich wieder von vorne anfangen!

R0BIN 13. Okt 2006 22:37

Re: 150 MB Datei erstellen immer in 256byte schritten?
 
ja das wäre ja kein thema 0-9 a-z A-Z aber wie schreibe ich die procedure?

Sunlight7 13. Okt 2006 22:48

Re: 150 MB Datei erstellen immer in 256byte schritten?
 
Hab gerade probiert, ist ganz leicht.
Wird der Source noch benötigt?

R0BIN 13. Okt 2006 22:50

Re: 150 MB Datei erstellen immer in 256byte schritten?
 
ja wäre echt nett wenn du den posten könntest!

Flare 13. Okt 2006 22:50

Re: 150 MB Datei erstellen immer in 256byte schritten?
 
Wieso missbraucht ihr dafür nicht einfach die ASCII-Zeichen? Die Zeichen 1-31 sollte man natürlich weglassen aber danach können doch alle genommen werden und es ist auch immer ein anderes Zeichen...


Flare

Sunlight7 13. Okt 2006 22:52

Re: 150 MB Datei erstellen immer in 256byte schritten?
 
Jo, no problemo.

Warum ärgert ihr euch immer mit den komischen FileStreams???

Delphi-Quellcode:
procedure TForm1.CreateMyFile;
   const MaxSize=150 * 1024 * 1024;
   var F:File;
       PC:PChar;
       c:Char;
       i:Integer;
   label DoItAgain;
begin
   GetMem(PC, 256);

   AssignFile(F, 'E:\Test.nix');
   ReWrite(F, 1);
DoItAgain:
      For c:='a' to 'z' do begin
         For i:=0 to 256-1 do
            PC[i]:=c;

         BlockWrite(F, PC^, 256);
         If FileSize(F)>=MaxSize then Break;
      end;
      If FileSize(F)<MaxSize then goto DoItAgain;
   CloseFile(F);

   FreeMem(PC);
end;
Geht doch ohne viel einfacher :???:

R0BIN 13. Okt 2006 22:54

Re: 150 MB Datei erstellen immer in 256byte schritten?
 
danke, das scheint zu gehen!

Zacherl 13. Okt 2006 22:55

Re: 150 MB Datei erstellen immer in 256byte schritten?
 
Und jetzt noch ohne Label:
Delphi-Quellcode:
procedure TForm1.CreateMyFile;
   const MaxSize=150 * 1024 * 1024;
   var F:File;
       PC:PChar;
       c:Char;
       i:Integer;
begin
   GetMem(PC, 256);

   AssignFile(F, 'E:\Test.nix');
   ReWrite(F, 1);
   repeat
      For c:='a' to 'z' do begin
         For i:=0 to 256-1 do
            PC[i]:=c;

         BlockWrite(F, PC^, 256);
         If FileSize(F)>=MaxSize then Break;
      end;
      until FileSize(F)>=MaxSize;
   CloseFile(F);

   FreeMem(PC);
end;
Florian


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:27 Uhr.
Seite 3 von 4     123 4      

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz