Hallo Michael,
sowas hatte ich bereits vermutet. Da ich aber auch Zeichen wie Chr(0) und Chr(13) im String wiedergefunden habe, hatte ich diese Vermutung wieder verworfen.
Mit Open For Binary habe ich früher auch schon gearbeitet. Das Einlesen hatte mir aber zu lange gedauert, daher dachte ich im Textstream-Objekt eine Alternative gefunden zu haben. Allerdings weiß ich jetzt, was ich falsch gemacht habe. Ich hab die Daten nämlich über die Input-Funktion (nicht die Anweisung, da diese bei großen Dateien einen Laufzeitfehler verursacht!) in einen String eingelesen. Das gab bei größeren Dateien von nur ein paar MB schon einige Wartezeiten.
Auf die Idee das mit Get in ein Array einzulesen bin ich noch nicht gekommen. Sehr gute Lösung! Damit kann ich arbeiten.
Jetzt dauert das Lesen und schreiben auch größerer Dateien (z.B. im GB-Bereich) nur wenige Sekunden. Hab nur das Array auf Redim s(0 To LOF(ff) - 1) geändert, da die neu erstellte Datei ein Byte größer war.
Vielen lieben Dank für den Denkanstoß. Hatte mir schon Nächte um die Ohren geschlagen, weil ich dachte, ich müsste die neue Datei noch irgendwie in Windows anmelden, oder so.
@Mase: Auch dir danke für deine Idee. Das Adodb-Objekt ist eines der wenigen Objekte, die mir bislang noch nicht untergekommen sind. Damit werde ich mich demnächst auch mal beschäftigen. Man weiß ja nie, wozu man es mal braucht.
Liebe Grüße Mr. K.
|