Directory() Verzeichnis mit 1,3 Mio Dateien
Moderator: Moderatoren
Directory() Verzeichnis mit 1,3 Mio Dateien
Guten Morgen liebe Forengemeinde.
Ich muss ein Verzeichnis mit 1,3 Millionen Dateien einlesen.
Das klappt leider nicht.
Bekomme folgende Fehlermeldung:
FATAL ERROR LOG
Error within the error handling!
SYS Thread-ID: 1028
Module: EXE
Error Codes: EH: 1006 Sub: 0(0) OS: 0 XPP: 15
Call Stack of Thread 1 (1028):
RECHNUNGSCHECK(76)
(B)Main(41)
@XBPPUSHBUTTON@I@HANDLEEVENT(1556)
MAIN(53)
Call Stack of GUI Thread (1200):
File: d:\sani\Rechnungscheck 2020\fuelldatei.exe
TimeStamp: 20200115 10:29
End of FATAL ERROR LOG.
FATAL ERROR LOG
Error within the error handling!
SYS Thread-ID: 1028
Module: EXE
Error Codes: EH: 1006 Sub: 0(0) OS: 0 XPP: 15
Call Stack of Thread 1 (1028):
RECHNUNGSCHECK(76)
(B)Main(41)
@XBPPUSHBUTTON@I@HANDLEEVENT(1556)
MAIN(53)
Call Stack of GUI Thread (1200):
File: d:\sani\Rechnungscheck 2020\fuelldatei.exe
TimeStamp: 20200115 10:31
End of FATAL ERROR LOG.
FATAL ERROR LOG
Error within the error handling!
SYS Thread-ID: 1028
Module: EXE
Error Codes: EH: 1006 Sub: 0(0) OS: 0 XPP: 15
Call Stack of Thread 1 (1028):
RECHNUNGSCHECK(76)
(B)Main(41)
@XBPPUSHBUTTON@I@HANDLEEVENT(1556)
MAIN(53)
Call Stack of GUI Thread (1200):
File: d:\sani\Rechnungscheck 2020\fuelldatei.exe
TimeStamp: 20200115 10:34
End of FATAL ERROR LOG.
Andere Verzeichnisse haben bis zu 350.000 Dateien, da klappt es sogar sehr schnell.
Gibt es eine Möglichkeit diese Dateien einzulesen?
VG Rolf
Ich muss ein Verzeichnis mit 1,3 Millionen Dateien einlesen.
Das klappt leider nicht.
Bekomme folgende Fehlermeldung:
FATAL ERROR LOG
Error within the error handling!
SYS Thread-ID: 1028
Module: EXE
Error Codes: EH: 1006 Sub: 0(0) OS: 0 XPP: 15
Call Stack of Thread 1 (1028):
RECHNUNGSCHECK(76)
(B)Main(41)
@XBPPUSHBUTTON@I@HANDLEEVENT(1556)
MAIN(53)
Call Stack of GUI Thread (1200):
File: d:\sani\Rechnungscheck 2020\fuelldatei.exe
TimeStamp: 20200115 10:29
End of FATAL ERROR LOG.
FATAL ERROR LOG
Error within the error handling!
SYS Thread-ID: 1028
Module: EXE
Error Codes: EH: 1006 Sub: 0(0) OS: 0 XPP: 15
Call Stack of Thread 1 (1028):
RECHNUNGSCHECK(76)
(B)Main(41)
@XBPPUSHBUTTON@I@HANDLEEVENT(1556)
MAIN(53)
Call Stack of GUI Thread (1200):
File: d:\sani\Rechnungscheck 2020\fuelldatei.exe
TimeStamp: 20200115 10:31
End of FATAL ERROR LOG.
FATAL ERROR LOG
Error within the error handling!
SYS Thread-ID: 1028
Module: EXE
Error Codes: EH: 1006 Sub: 0(0) OS: 0 XPP: 15
Call Stack of Thread 1 (1028):
RECHNUNGSCHECK(76)
(B)Main(41)
@XBPPUSHBUTTON@I@HANDLEEVENT(1556)
MAIN(53)
Call Stack of GUI Thread (1200):
File: d:\sani\Rechnungscheck 2020\fuelldatei.exe
TimeStamp: 20200115 10:34
End of FATAL ERROR LOG.
Andere Verzeichnisse haben bis zu 350.000 Dateien, da klappt es sogar sehr schnell.
Gibt es eine Möglichkeit diese Dateien einzulesen?
VG Rolf
VG Rolf
- Tom
- Der Entwickler von "Deep Thought"
- Beiträge: 9388
- Registriert: Do, 22. Sep 2005 23:11
- Wohnort: Berlin
- Hat sich bedankt: 104 Mal
- Danksagung erhalten: 362 Mal
- Kontaktdaten:
Re: Directory() Verzeichnis mit 1,3 Mio Dateien
Was steht in Zeile 76 von "RECHNUNGSCHECK"?
Herzlich,
Tom
Tom
- Martin Altmann
- Foren-Administrator
- Beiträge: 16549
- Registriert: Fr, 23. Sep 2005 4:58
- Wohnort: Berlin
- Hat sich bedankt: 114 Mal
- Danksagung erhalten: 48 Mal
- Kontaktdaten:
Re: Directory() Verzeichnis mit 1,3 Mio Dateien
Wahrscheinlich ADir().
Zu viele Einträge für ein Array - Jan hatte mal von Alaska ein Tuning erhalten, um mehr als die normal mögliche Anzahl an ArrayEinträgen zu verwalten.
Viele Grüße,
Martin
Zu viele Einträge für ein Array - Jan hatte mal von Alaska ein Tuning erhalten, um mehr als die normal mögliche Anzahl an ArrayEinträgen zu verwalten.
Viele Grüße,
Martin
Webseite mit XB2.NET und ausschließlich statischem Content in Form von HTML-Dateien: https://www.altem.de/
Webseite mit XB2.NET und ausschließlich dynamischem Content in Form von in-memory-HTML: https://meldungen.altem.de/
Mitglied der XUG Osnabrück
Vorsitzender des Deutschsprachige Xbase-Entwickler e. V.
- Manfred
- Foren-Administrator
- Beiträge: 21219
- Registriert: Di, 29. Nov 2005 16:58
- Wohnort: Kreis Wesel
- Hat sich bedankt: 210 Mal
- Danksagung erhalten: 67 Mal
Re: Directory() Verzeichnis mit 1,3 Mio Dateien
oben steht doch error within the errorhandling. Heißt das nicht, das er einen Fehler in seiner Fehlerroutine hat?
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
- Tom
- Der Entwickler von "Deep Thought"
- Beiträge: 9388
- Registriert: Do, 22. Sep 2005 23:11
- Wohnort: Berlin
- Hat sich bedankt: 104 Mal
- Danksagung erhalten: 362 Mal
- Kontaktdaten:
Re: Directory() Verzeichnis mit 1,3 Mio Dateien
Oder es ist ein Zustand entstanden, der selbst das Laufzeitfehlersystem aushebelt.
Herzlich,
Tom
Tom
- brandelh
- Foren-Moderator
- Beiträge: 15701
- Registriert: Mo, 23. Jan 2006 20:54
- Wohnort: Germersheim
- Hat sich bedankt: 69 Mal
- Danksagung erhalten: 34 Mal
- Kontaktdaten:
Re: Directory() Verzeichnis mit 1,3 Mio Dateien
Error within the error handling!
zusammen mit dem FATAL ERROR deuten auf eine Endlosschleife zwischen Code und Errorhandler hin bis der Stack weg ist.
Ob es erlaubt ist ein Array mit 1,3 Millionen Verzeichnis Infos anzulegen ist aber eine ganz andere Frage !
Hier habe ich keines das so groß wäre ... und verzweifle dennoch bis Win 7 oder 10 das Verzeichnis endlich im Explorer anzeigt.
zusammen mit dem FATAL ERROR deuten auf eine Endlosschleife zwischen Code und Errorhandler hin bis der Stack weg ist.
Ob es erlaubt ist ein Array mit 1,3 Millionen Verzeichnis Infos anzulegen ist aber eine ganz andere Frage !
Hier habe ich keines das so groß wäre ... und verzweifle dennoch bis Win 7 oder 10 das Verzeichnis endlich im Explorer anzeigt.
Gruß
Hubert
Hubert
Re: Directory() Verzeichnis mit 1,3 Mio Dateien
Ich habe es mit Directory() gemacht.Martin Altmann hat geschrieben: ↑Mi, 15. Jan 2020 11:11 Wahrscheinlich ADir().
Zu viele Einträge für ein Array - Jan hatte mal von Alaska ein Tuning erhalten, um mehr als die normal mögliche Anzahl an ArrayEinträgen zu verwalten.
Viele Grüße,
Martin
Werde es mit Adir() versuchen.
Gibt es das Tuning irgendwo zum download?
VG Rolf
- brandelh
- Foren-Moderator
- Beiträge: 15701
- Registriert: Mo, 23. Jan 2006 20:54
- Wohnort: Germersheim
- Hat sich bedankt: 69 Mal
- Danksagung erhalten: 34 Mal
- Kontaktdaten:
Re: Directory() Verzeichnis mit 1,3 Mio Dateien
mit ADIR() kannst du wohl die Anzahl der Elemente begrenzen, damit fehlen aber auch immer welche ...The function ADir() exists only for compatibility reasons. Instead of ADir(), the function Directory() should be used. Directory() returns the file information in a two dimensional array.
12 Defines gibt es, also erzeugt directory ein Array mit n x 12 Elementen, ADIR() jeweils 6 einzelne Arrays (die müssen wohl bestehen ?) je Datei, somit könnte das weniger problematisch sein, aber 1,3 Millionen Elemente im Array
ist zu viel. JAN hatte extra Parameter von Alaska erhalten für sehr große Arrays.
Was genau willst du damit eigentlich machen ?
Gruß
Hubert
Hubert
- Jan
- Marvin
- Beiträge: 14659
- Registriert: Fr, 23. Sep 2005 18:23
- Wohnort: 49328 Melle
- Hat sich bedankt: 21 Mal
- Danksagung erhalten: 88 Mal
- Kontaktdaten:
Re: Directory() Verzeichnis mit 1,3 Mio Dateien
Das ist richtig. Allerdings übersteigen 1,3 Mio. Sätze auch deren Fähigkeiten. Standardeinstellung von Alaska ist glaube ich 300.000 Sätze, mit den Hinweisen von Alaska habe ich das glaube ich auf 1.000.000 hochgetrieben. Dann war auch da Schluß.Martin Altmann hat geschrieben: ↑Mi, 15. Jan 2020 11:11Wahrscheinlich ADir().
Zu viele Einträge für ein Array - Jan hatte mal von Alaska ein Tuning erhalten, um mehr als die normal mögliche Anzahl an ArrayEinträgen zu verwalten.
Wobei ich mir auch vorstellen kann das da irgendwann der RAM ausgeht. Kommt auf die Größe der Sätze an.
Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Re: Directory() Verzeichnis mit 1,3 Mio Dateien
Das sind automatisch generierte Rechnungdateien.brandelh hat geschrieben: ↑Mi, 15. Jan 2020 11:37mit ADIR() kannst du wohl die Anzahl der Elemente begrenzen, damit fehlen aber auch immer welche ...The function ADir() exists only for compatibility reasons. Instead of ADir(), the function Directory() should be used. Directory() returns the file information in a two dimensional array.
12 Defines gibt es, also erzeugt directory ein Array mit n x 12 Elementen, ADIR() jeweils 6 einzelne Arrays (die müssen wohl bestehen ?) je Datei, somit könnte das weniger problematisch sein, aber 1,3 Millionen Elemente im Array
ist zu viel. JAN hatte extra Parameter von Alaska erhalten für sehr große Arrays.
Was genau willst du damit eigentlich machen ?
Die müssen mit anderen Protokollen gegengecheckt werden.
Im Dateinamen steht die Rechnungsnummer. Nur diese brauche ich für die Suche in den Protokollen.
Aber dafür muss ich das Verzeichnis einlesen.
VG Rolf
- Jan
- Marvin
- Beiträge: 14659
- Registriert: Fr, 23. Sep 2005 18:23
- Wohnort: 49328 Melle
- Hat sich bedankt: 21 Mal
- Danksagung erhalten: 88 Mal
- Kontaktdaten:
Re: Directory() Verzeichnis mit 1,3 Mio Dateien
Mail an Alaska schicken.
Das Problem ist: Die wissen das teilweise selber nicht. Oder meinen, mit der 2.0 wären die (von Alaska irgendwann mal aus Performancegründen eingebauten) Grenzen aufgehoben, und man braucht das nicht mehr. Es kann also möglicherweise eine unbefriedigende Antwort geben.
Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Re: Directory() Verzeichnis mit 1,3 Mio Dateien
Gibt es vielleicht eine Möglichkeit das Verzeichnis "Häppchenweise" einzulesen?
Erstmal von 1 bis 200000 dann vonn 200001 etc. ?
Ich brauche nur den Dateinamen.
Erstmal von 1 bis 200000 dann vonn 200001 etc. ?
Ich brauche nur den Dateinamen.
VG Rolf
- Jan
- Marvin
- Beiträge: 14659
- Registriert: Fr, 23. Sep 2005 18:23
- Wohnort: 49328 Melle
- Hat sich bedankt: 21 Mal
- Danksagung erhalten: 88 Mal
- Kontaktdaten:
Re: Directory() Verzeichnis mit 1,3 Mio Dateien
Rolf,
Du kannst ja bei Directory() einen Filter angeben. Z. B. den Anfangsbuchstaben der Dateien, und dann gehst Du von a bis z alles einzeln durch.
Jan
Du kannst ja bei Directory() einen Filter angeben. Z. B. den Anfangsbuchstaben der Dateien, und dann gehst Du von a bis z alles einzeln durch.
Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
- Manfred
- Foren-Administrator
- Beiträge: 21219
- Registriert: Di, 29. Nov 2005 16:58
- Wohnort: Kreis Wesel
- Hat sich bedankt: 210 Mal
- Danksagung erhalten: 67 Mal
Re: Directory() Verzeichnis mit 1,3 Mio Dateien
und wenn Du dann nur den namen oder so benötigst, dann empfehle ich Dir mal einen Blick hier drauf. Vielleicht kannst Du es ja benutzen. Aber erst ab Ver. 2.0
https://www.xbaseforum.de/viewtopic.php ... ct#p124452
https://www.xbaseforum.de/viewtopic.php ... ct#p124452
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Re: Directory() Verzeichnis mit 1,3 Mio Dateien
Das probiere ich gleich mal aus. Das würde mir schon helfen.
THx.!
VG Rolf
- brandelh
- Foren-Moderator
- Beiträge: 15701
- Registriert: Mo, 23. Jan 2006 20:54
- Wohnort: Germersheim
- Hat sich bedankt: 69 Mal
- Danksagung erhalten: 34 Mal
- Kontaktdaten:
Re: Directory() Verzeichnis mit 1,3 Mio Dateien
Musst du immer alle Dateien dieses Verzeichnisses erwischen ?
Es gibt grundsätzlich 3 Möglichkeiten ...
1. Betriebsystemfunktionen, früher war das mal FindFirst(), FindNext() ... in Basic, da hat man immer jede Datei einzeln gesucht. Dürfte langsam sein
2. UNIVERSAL SQL ... man kann ab der 2.00 mit SQL Befehl das Verzeichnis nach Dateien durchsuchen, dort könnte auch eine Schrittweite möglich sein.
3. DIR *.* /B > Verzeichnisdatei.txt, diese dann sequentiell mit z.B. meiner Funktion HBTextReader( cFile ) abarbeiten
Es gibt grundsätzlich 3 Möglichkeiten ...
1. Betriebsystemfunktionen, früher war das mal FindFirst(), FindNext() ... in Basic, da hat man immer jede Datei einzeln gesucht. Dürfte langsam sein
2. UNIVERSAL SQL ... man kann ab der 2.00 mit SQL Befehl das Verzeichnis nach Dateien durchsuchen, dort könnte auch eine Schrittweite möglich sein.
3. DIR *.* /B > Verzeichnisdatei.txt, diese dann sequentiell mit z.B. meiner Funktion HBTextReader( cFile ) abarbeiten
Gruß
Hubert
Hubert
- brandelh
- Foren-Moderator
- Beiträge: 15701
- Registriert: Mo, 23. Jan 2006 20:54
- Wohnort: Germersheim
- Hat sich bedankt: 69 Mal
- Danksagung erhalten: 34 Mal
- Kontaktdaten:
Re: Directory() Verzeichnis mit 1,3 Mio Dateien
UNIVERSAL SQL (der Link von Manfred, den ich nur so in Erinnerung hatte), wird nicht funktionieren, denn da wird Directory() als Datenquelle angegeben:
SELECT field1 AS name, field2 AS size FROM (Directory()) INTO objects adirectory
Gruß
Hubert
Hubert
- Manfred
- Foren-Administrator
- Beiträge: 21219
- Registriert: Di, 29. Nov 2005 16:58
- Wohnort: Kreis Wesel
- Hat sich bedankt: 210 Mal
- Danksagung erhalten: 67 Mal
Re: Directory() Verzeichnis mit 1,3 Mio Dateien
Hubert,
der Tipp bezog sich auf den Ratschlag von Jan. Der Vorfilter sorgt für weniger DAten.
der Tipp bezog sich auf den Ratschlag von Jan. Der Vorfilter sorgt für weniger DAten.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
- brandelh
- Foren-Moderator
- Beiträge: 15701
- Registriert: Mo, 23. Jan 2006 20:54
- Wohnort: Germersheim
- Hat sich bedankt: 69 Mal
- Danksagung erhalten: 34 Mal
- Kontaktdaten:
Re: Directory() Verzeichnis mit 1,3 Mio Dateien
War nicht gegen dich gerichtet, ich hatte UNIVERSAL SQL erwähnt und danach bei dir nach der Syntax geschaut ...
da wird directory() verwendet, daher meine Korrektur, dass es so nicht geht.
Vorfilter sind ja ganz nett, aber es kann sein, dass auch ein Buchstabe am Anfang die Grenzen sprengt, daher nicht wirklich sinnvoll.
Ein anderes Problem ist, ob man damit rechnen muss, dass neue Dateien dazu kommen oder nicht.
Bei Directory() wird das ein Schnappschuss und gut ist, wenn man mit Datei Funktionen werkelt könnte es da ein Problem geben.
Ich denke, dass nur der Umweg über eine Datei mit Dateinamen und diese sequentiell zu verarbeiten sinnvoll ist, bei der Menge aber nicht mit MemoLine()
da wird directory() verwendet, daher meine Korrektur, dass es so nicht geht.
Vorfilter sind ja ganz nett, aber es kann sein, dass auch ein Buchstabe am Anfang die Grenzen sprengt, daher nicht wirklich sinnvoll.
Ein anderes Problem ist, ob man damit rechnen muss, dass neue Dateien dazu kommen oder nicht.
Bei Directory() wird das ein Schnappschuss und gut ist, wenn man mit Datei Funktionen werkelt könnte es da ein Problem geben.
Ich denke, dass nur der Umweg über eine Datei mit Dateinamen und diese sequentiell zu verarbeiten sinnvoll ist, bei der Menge aber nicht mit MemoLine()
Gruß
Hubert
Hubert
- brandelh
- Foren-Moderator
- Beiträge: 15701
- Registriert: Mo, 23. Jan 2006 20:54
- Wohnort: Germersheim
- Hat sich bedankt: 69 Mal
- Danksagung erhalten: 34 Mal
- Kontaktdaten:
Re: Directory() Verzeichnis mit 1,3 Mio Dateien
Hier zeigt Microsoft wie man mit FindFirstFile() etc. einzelne Dateien abfragt, die API Funktionen sollte man einbinden können:
https://docs.microsoft.com/en-us/window ... -directory
vermutlich sind das aber Unicode Daten in der Struktur und Strukturen lesen ist nicht sooo toll
Es gäbe noch eine Möglichkeit, wenn du für externe DLL offen bist ...
In PowerBasic könnte ich eine DLL Funktion erstellen, die die Arbeit macht und per DLLCALL die Arbeit erledigt.
Entweder in einer externen Datei alle Namen oder man übergibt die Nummer der Datei in der Liste ... bis ein "" zurückkommt (also die 1., 2. 3. 4. .... n. Datei anfordern)
https://docs.microsoft.com/en-us/window ... -directory
vermutlich sind das aber Unicode Daten in der Struktur und Strukturen lesen ist nicht sooo toll
Es gäbe noch eine Möglichkeit, wenn du für externe DLL offen bist ...
In PowerBasic könnte ich eine DLL Funktion erstellen, die die Arbeit macht und per DLLCALL die Arbeit erledigt.
Entweder in einer externen Datei alle Namen oder man übergibt die Nummer der Datei in der Liste ... bis ein "" zurückkommt (also die 1., 2. 3. 4. .... n. Datei anfordern)
Gruß
Hubert
Hubert
Re: Directory() Verzeichnis mit 1,3 Mio Dateien
Hi.brandelh hat geschrieben: ↑Mi, 15. Jan 2020 12:05 Musst du immer alle Dateien dieses Verzeichnisses erwischen ?
Es gibt grundsätzlich 3 Möglichkeiten ...
1. Betriebsystemfunktionen, früher war das mal FindFirst(), FindNext() ... in Basic, da hat man immer jede Datei einzeln gesucht. Dürfte langsam sein
2. UNIVERSAL SQL ... man kann ab der 2.00 mit SQL Befehl das Verzeichnis nach Dateien durchsuchen, dort könnte auch eine Schrittweite möglich sein.
3. DIR *.* /B > Verzeichnisdatei.txt, diese dann sequentiell mit z.B. meiner Funktion HBTextReader( cFile ) abarbeiten
Ich versuche es mit der Variante 3. Dir > "datei".
Die Dateinamen beginnen mit Zahlen. 43 bis 54. Somit fällt der Filter auch weg. Es soll eine unbeaufsichtige Anwendung sein.
Dein Proggi, welches eine Datei mit den Dateinamen liefert würde auch passen.
Danke dir.
VG Rolf
- Jan
- Marvin
- Beiträge: 14659
- Registriert: Fr, 23. Sep 2005 18:23
- Wohnort: 49328 Melle
- Hat sich bedankt: 21 Mal
- Danksagung erhalten: 88 Mal
- Kontaktdaten:
Re: Directory() Verzeichnis mit 1,3 Mio Dateien
Wieso? Du kannst doch z. B. so durchlaufen:
Code: Alles auswählen
FOR i := 43 TO 54
aDirectory := Directory(Var2Char(i) + "*.txt")
NEXT
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
- brandelh
- Foren-Moderator
- Beiträge: 15701
- Registriert: Mo, 23. Jan 2006 20:54
- Wohnort: Germersheim
- Hat sich bedankt: 69 Mal
- Danksagung erhalten: 34 Mal
- Kontaktdaten:
Re: Directory() Verzeichnis mit 1,3 Mio Dateien
Ich habe hier 1,2 Millionen Testdateien erzeugt, der DIR /b > Test.csv dauert knapp 7 Sekunden (I5 2550, SSD),
ich denke das wird Welten schneller sein, als 1,3 Millionen mal find first und find next aus Xbase heraus aufzurufen.
HBTextReader( cFile ) ... selbst arbeitet intern mit einem 4 K Buffer, und liest von der Platte, somit keine Größenbegrenzung !
Meine Test.csv war etwa 70 MB groß, im RAM mit memoline macht das keinen Spaß mehr
ich denke das wird Welten schneller sein, als 1,3 Millionen mal find first und find next aus Xbase heraus aufzurufen.
HBTextReader( cFile ) ... selbst arbeitet intern mit einem 4 K Buffer, und liest von der Platte, somit keine Größenbegrenzung !
Meine Test.csv war etwa 70 MB groß, im RAM mit memoline macht das keinen Spaß mehr
Gruß
Hubert
Hubert