AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Dateien erstellen

Ein Thema von Meflin · begonnen am 3. Sep 2003 · letzter Beitrag vom 11. Sep 2003
Antwort Antwort
Seite 2 von 4     12 34      
Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#11

Re: Dateien erstellen

  Alt 3. Sep 2003, 12:28
http://www.coax.de/wissen/einheite.asp
  Mit Zitat antworten Zitat
Benutzerbild von Meflin
Meflin

Registriert seit: 21. Aug 2003
4.856 Beiträge
 
#12

Re: Dateien erstellen

  Alt 3. Sep 2003, 12:30
ok, thx damit wäre die frage beantwortet!
Leo S.
  Mit Zitat antworten Zitat
Benutzerbild von Wormid
Wormid

Registriert seit: 26. Aug 2003
Ort: Steinfurt
292 Beiträge
 
Delphi XE2 Professional
 
#13

Re: Dateien erstellen

  Alt 3. Sep 2003, 14:04
Obwohl die Frage eigentlich beantwortet ist: Warum so umständlich mit Streams und Konsorten?

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var F: TextFile;
    S: String;
    i: Integer;
begin
    AssignFile(F, 'C:\test.txt');
    Rewrite(F);
    // Man kann da auch mit andern Werten spielen... Aber
    // allzugroß sollte man das nicht machen, sonst fängt Windows
    // an das auszulagern... Und dann wird es langsam... ;-)
    SetLength(S, 1024 * 1024);
    for i := 1 to 1024 do Write(F, S);
    CloseFile(F);
end;
Und *zack*... in 45 Sekunden ist ein Gigabyte weniger frei auf Laufwerk C:!

Gruß

Wormid
Debuggers don't remove Bugs, they only show them in Slow-Motion.
  Mit Zitat antworten Zitat
Chewie

Registriert seit: 10. Jun 2002
Ort: Deidesheim
2.886 Beiträge
 
Turbo Delphi für Win32
 
#14

Re: Dateien erstellen

  Alt 3. Sep 2003, 14:11
Deine und meine Methode sind sehr ähnnlich. Du benutzt Pascal-Files, ich einen TFilestream. Meine Variante kann aber ohne Modifikation (außer bei den Konstanten und bei Size) belieig großee Dateien schreiben, während du auf deine Array-Größe mal x beschränkt bist.
Martin Leim
Egal wie dumm man selbst ist, es gibt immer andere, die noch dümmer sind
  Mit Zitat antworten Zitat
Lillebrohr
(Gast)

n/a Beiträge
 
#15

Re: Dateien erstellen

  Alt 3. Sep 2003, 14:13
Guten Tag,

erm, steht die Größe der Datei nicht im Datei-Header drinn ?

Könnte man da nicht irgendwas regeln ? Sozusagen auslesen und umschreiben ?


Bis denne

MfG

LB
  Mit Zitat antworten Zitat
Benutzerbild von Wormid
Wormid

Registriert seit: 26. Aug 2003
Ort: Steinfurt
292 Beiträge
 
Delphi XE2 Professional
 
#16

Re: Dateien erstellen

  Alt 3. Sep 2003, 14:19
@Chewie: Stimmt sogar... das mit der beliebigen Größe war mir nicht bewußt. Allergings könte man ja auch SetLength mit der endgültigen Größe des Strings füttern und den dann nur einmal wegschreiben. Ist aber nicht empfehlenswert bei einer gewünschten Länge von über 10 MB oder so.
Debuggers don't remove Bugs, they only show them in Slow-Motion.
  Mit Zitat antworten Zitat
Chewie

Registriert seit: 10. Jun 2002
Ort: Deidesheim
2.886 Beiträge
 
Turbo Delphi für Win32
 
#17

Re: Dateien erstellen

  Alt 3. Sep 2003, 14:24
Zitat von Wormid:
Allergings könte man ja auch SetLength mit der endgültigen Größe des Strings füttern und den dann nur einmal wegschreiben. Ist aber nicht empfehlenswert bei einer gewünschten Länge von über 10 MB oder so.
Bingo Oder falls doch ... mach schon mal den Kaffee warm
Martin Leim
Egal wie dumm man selbst ist, es gibt immer andere, die noch dümmer sind
  Mit Zitat antworten Zitat
Chewie

Registriert seit: 10. Jun 2002
Ort: Deidesheim
2.886 Beiträge
 
Turbo Delphi für Win32
 
#18

Re: Dateien erstellen

  Alt 3. Sep 2003, 14:28

Ich hab gerade gemerkt, dass ich einen Denkfehler drin hatte. In der while-Schleife muss auf kleiner/gleich geprüft werden.
Martin Leim
Egal wie dumm man selbst ist, es gibt immer andere, die noch dümmer sind
  Mit Zitat antworten Zitat
Benutzerbild von Meflin
Meflin

Registriert seit: 21. Aug 2003
4.856 Beiträge
 
#19

Re: Dateien erstellen

  Alt 3. Sep 2003, 14:34
ja das is mir auch schon aufgefallen, weil allle dateien im test (zb bei 10 kb nur 9kb)kleiner wurden als sie sein sollten! *G*
Leo S.
  Mit Zitat antworten Zitat
kasi

Registriert seit: 18. Aug 2003
10 Beiträge
 
Delphi 5 Enterprise
 
#20

Re: Dateien erstellen

  Alt 3. Sep 2003, 20:31
Das ist schneller
Code:
procedure DoCreateFile(Filename: string; Size: LongInt);
var
  FS: TFileStream;

begin
FS := TFileStream.Create(Filename, fmCreate);
try
  FS.Size := Size;
finally
  FS.Free;
end;
end;
kasi
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 4     12 34      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:25 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz