Seite 1 von 2
probleme mit datein
Verfasst: 16.10.2005 09:44
von sen-me
hmm ich habn problem
wenn ich eine datei lade die zu groß ist, dann schmirt mir das programm ab (hab die datein eingelesen und dan nochmal in eine neue datei geschrieben)
er tut zwar die datei richtig einlesen, aber ausgeben hat er probleme
(mittels readfile öffne ich, hol mir mit filesize die größe und mach daraus ein array, wo dan jedes byte der datei eingelesen wird, am ende wird dan ein createfile gemacht worin ich dan die aus dem array gespeicherten werte hole und die datei daraus schreibe (writebyte))
Verfasst: 16.10.2005 10:01
von roherter
Ich kenne zwar nicht genau das problem aber ich würde anstatt filesize das hier nehmen:
Lof()
LOF steht für 'Length Of File' (Länge der Datei). Es gibt die Länge der aktuellen Datei zurück!
ps:Ich weiß ja nicht was du vor hast??
Verfasst: 16.10.2005 10:10
von sen-me
wenn ich exe datein auslese?
ne abe rich glaub ich weiß wos problem liegen könnte
f_size=Filesize(file)
bei long liegt ja ne grenze, kann man es irgendwie machen das man eine unendlich zahl speichern kann?
Verfasst: 16.10.2005 14:16
von MVXA
Geht aber in die rechenzeit, wenn du eine 4096-Bit Zahl zum Rechnen
benutzt

.
Verfasst: 16.10.2005 14:59
von sen-me
egal
Verfasst: 16.10.2005 15:00
von Laurin
sen-me hat geschrieben:ne abe rich glaub ich weiß wos problem liegen könnte
f_size=Filesize(file)
bei long liegt ja ne grenze, kann man es irgendwie machen das man eine unendlich zahl speichern kann?
Die Grenze bei Longs liegen in diesem Fall bei 2 GB großen Dateien. Das dürfte doch mehr als ausreichend sein, oder?
wo dan jedes byte der datei eingelesen wird
(writebyte)
Byteweise??? Das dauert doch Ewigkeiten. Benutze anstatt eines Arrays lieber AllocateMemory(), ReadData() und WriteData(). Da dürfte es dann auch wurscht sein, wie groß die Datei ist.
Verfasst: 16.10.2005 16:47
von Kaeru Gaman
wieso eigentlich der umweg über die memory?
...ich mein.. du schreibst hier ja nicht, daß du was dran manipulieren willst...
und selbst wenn, schreibs doch direkt in ne neue datei, und arbeite auf der mittels FileSeek()
Verfasst: 16.10.2005 18:10
von sen-me
ja ich wills manipulieren, aber ich muss ja vorherwissen wieviel bytes die datei hat...
Verfasst: 16.10.2005 18:20
von Kaeru Gaman
ich meine nur... du kannst es auch direkt auf der platte manipulieren...
dann isses egal, wie groß es ist und wieviel speicher du hast...
Verfasst: 16.10.2005 19:49
von sen-me
kapir ich nicht? ich will ne neue datei aber draus machen