Autor Beitrag
Gunnar
Hält's aus hier
Beiträge: 6



BeitragVerfasst: Mi 29.10.03 17:34 
Hallo, Leute!

Das sequentielle Laden in Delphi 5 und das Übertragen der Strings aus einer 10MB - Textdatei nach Excel 97 per OLE dauert ewig. Kennt jemand schnellere Möglichkeiten zum Einlesen / Übertragen von solchen Textdateien?
Möglich wäre komplett in Variable (TFileStream) einlesen. Wäre dies die schnellste Methode zum Einlesen und wenn ja, wie kann ich damit auf einzelne Zeilen zugreifen?
Bei Excel 97 wäre der direkte Zugriff auf die xls-Datei per biff8 am Schnellsten, aber wie kann ich am Schnellsten Excel 97 (ohne OLE) fernsteuern, also Strings an eine laufende Excel-Applikation schicken?

Eine Aufteilung der Textdateien ist nicht möglich, da diese von einem anderen Programm erstellt werden.

Ich hoffe, Ihr habt darauf eine Antwort und könnt mir helfen
toms
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 1099
Erhaltene Danke: 2



BeitragVerfasst: Mi 29.10.03 19:55 
Hi!

Du könntest deine Text-Datei umbenennen in .xls und diese Datei
kann dann problemlos mit Excel geöffnet werden.
Gunnar Threadstarter
Hält's aus hier
Beiträge: 6



BeitragVerfasst: Mi 29.10.03 20:16 
Hi Tom!

Danke für den Tipp. Habe es gerade versucht. Ja, die Textdatei wird tatsächlich etwas schneller geladen, wenn man sie in ".xls" umbenennt. Aber kennst Du zufällig auch eine schnellere Methode zum Einlesen von Textdateien in Delphi 5? Es sollte schneller gehen als sequentiell auslesen. Dachte da an TFileStream, nur kenne ich mich damit überhaupt nicht aus, vor allem, wie man damit auf einzelne Zeilen zugreifen kann.
MSCH
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 1448
Erhaltene Danke: 3

W7 64
XE2, SQL, DevExpress, DevArt, Oracle, SQLServer
BeitragVerfasst: Mi 29.10.03 21:10 
wieso einlesen? Man kann doch heutzutage files direkt mappen. Schau dir mal im SDK die CreatefileMapping und ff an. Im prinzip wird deine Riesendatei in Stücken direkt durch das BS in den Speicher eingeblendet und simple ausgedrückt, musst du nur mit einem Zeiger durchlaufen.
Das sollte das schnellste sein - leider auch das komplizierteste.
grez
msch

_________________
ist das politisch, wenn ich linksdrehenden Joghurt haben möchte?
Gunnar Threadstarter
Hält's aus hier
Beiträge: 6



BeitragVerfasst: Mi 29.10.03 21:38 
Hey, cool, gute Idee, habe ich bisher noch nix davon gehört oder gelesen, werde ich sofort ausprobieren. Danke vielmals!!
Gunnar Threadstarter
Hält's aus hier
Beiträge: 6



BeitragVerfasst: Mi 29.10.03 22:36 
Hey, cool, gute Idee, habe ich bisher noch nix davon gehört oder gelesen, werde ich sofort ausprobieren. Danke vielmals!!