-
Forum: Object-Pascal / Delphi-Language
Delphi
by Totti,
4. Dez 2005
Und was mach ich, wenn ich die Zeile verlängern muss?
Statt '203948029438' nen '7 ' rienzusetzen ist ja ohne großes verschieben gemacht, richtig.
Aber aus ner '7' ne '203948029438' machen?!?
danke
p.s.: das mit den zeilenlängennummerierungen habsch geblickt, glaubsch ;)
-
Forum: Object-Pascal / Delphi-Language
Delphi
by Totti,
4. Dez 2005
@marabu,
allein die Eigenschaften eines einzelnen Spielers nehmen mehr als 200 Zeilen und damit Eigenschaften ein, hinzukommen halt die Eigenschaften der ganzen Vereine, des Landes, der Trainer, der Nationalmannschaft, der Stadien ... etc
@mimi,
Würdest du also erst die Datei einlesen und in ne tmpDatei neuschrieben, wobei vor jeder Zeile deren Länge steht?
Anschließend diese tmpDatei...
-
Forum: Object-Pascal / Delphi-Language
Delphi
by Totti,
1. Dez 2005
hab ich mal tickmäßig durchgecheckt, hat irgendwie nicht wirklich was gebracht .... hab im Netz allerdings gelesen, dass es was bei sichtbaren objekten, die auf tstrings zurückgreifen halt was brinbgen soll, weil er in de rzeit wohl net updated (das sichtbare) o.ä.
Trotzem danke, ich lern gern neues dazu ...
deshalb auch an marabu und chaobsen die frage, ob von euch noch was kommt ... :???:...
-
Forum: Object-Pascal / Delphi-Language
Delphi
by Totti,
29. Nov 2005
Hi,
die Dinge, die ich mit meinem Programm mache, deckt der EA-Editor nicht ab - deshalb schreib ich mir ja nen Programm ;)
Geht größtenteils um automatisierungsprozesse ... das hinzufügen/erstellen von Spielerdaten lässt sich mit dem Edi wesentlih einfacher gestalten, da hast du zweifelsohne Recht.
Da ich aber nur ca. 5% (wenn überhaupt) der zur Verfügung stehendes Daten eines Spielers "zu...
-
Forum: Object-Pascal / Delphi-Language
Delphi
by Totti,
28. Nov 2005
Okay, also nochmal von vorne:
Es handelt sich nicht um ein Geheimobjekt :)
Es geht mir darum, aus den Datenbankdateien eines Spiels (hier der FussballManager von EA) bestimmte Informationen herauszusuchen, zu ersetzen, etc. Da ich verschiedenste Anwendungsbereiche im Auge habe, möchte ich eine möglichst allgemeingehaltene Lösung, auch wenn diese evtl. für diverse Anforderungsbereiche nicht...
-
Forum: Object-Pascal / Delphi-Language
Delphi
by Totti,
28. Nov 2005
Okay, habe mit unten stehendem Code mal die Zeit gemessen
a) Einlesen in ein Array mittels textfile
b) Nutzen einer TStringList
Habe jeweils eine 1,6MB große Textdatei mit ca 280.000 Zeilen eingelesen und dann nach einer Zeile gesucht.
Es wird auch jeweils wieder der Speicher freigegeben (hoffe ich ^^).
Die Methode a) ist definitiv schneller (liegt meist bei ~92ms) als b) (meist ~125ms)....
-
Forum: Object-Pascal / Delphi-Language
Delphi
by Totti,
27. Nov 2005
Ähm, vielen Dank, für die Mühe, die du dir machst. Wenn ich aber in Zeile 9923 auf einen bestimmten Ausdruck stoße, wäre es im Idealfall gut, in Zeile 9845 daraufhin etwas ändern zu können.
Ich check einfach mal aus, wie schnell sich die TSTringListen machen, wenn man den Quelltext net so hinmüllt wie ich vor 1,5 Jahren als blutiger Anfänger - wenn ich dann zeit und Lust habe, schreib ich...
-
Forum: Object-Pascal / Delphi-Language
Delphi
by Totti,
27. Nov 2005
Nein ... in einigen Dateien garkeine, in eingen mehere Hundert Zeilen ... ich muss aber in jedem Fall alle Zeilen durchgehen ...
und die, die geändert werden, die haben dann meist net dieselbe Länge wie vorher, sondern gerne mal das 9-fache (von 1 zeichen auf 9 ^^).
Und wieso das mit der TStringlist solang dauert ... naja ... in den Prozeduren waren auch vergleiche und vermischen und...
-
Forum: Object-Pascal / Delphi-Language
Delphi
by Totti,
27. Nov 2005
Dass das seek net geht war auf file of text bezogen und net auf das Öffnen einer txt-datei mittels tfilestream.
Des Weiteren macht es erhebliche Unterschiede, ob du ne TStringlist zum einlesen und durchforsten (ohne Schreibvorgang) nutzt oder file of text mit anschließendem readln, wenn du 200 Dateien mit ner gesamtgröße von 40MB hast ... glaubs mir, das macht gut und gerne mal 30 Sekunden...
-
Forum: Object-Pascal / Delphi-Language
Delphi
by Totti,
27. Nov 2005
Ich darf zum Glück garnicht die zeilenanzahl verändern, weil ich dann die Sytax durcheinander bringe ... nur die Zeilenlängen :)
Aber was meintest du mit "id eLänge steht vor jeder Zeile"?
ich meine mich zu erinnern, dass ich mir mal den Stream angeschaut hab und die Zeilen lediglich durchein #13#10 getrennt waren und net noch mit ner Zusätzlichen Längenangabe.
Ode rist da sjetzt dein...
-
Forum: Object-Pascal / Delphi-Language
Delphi
by Totti,
27. Nov 2005
ja, das mitm array wäre ne gute Idee ... wenn es denn schneller als ne TStringList ist, wie ich hoffe. DAs gute wäre eben, dass man Zeilen direkt anspringen kann, im gegensatz zu dem einzelnen string ... wäre halt alles ein wenig übersichtlicher von der handhabung her. Ich versuchs mal damit, danke für den Tip.
Den anderen kann ich leider weniger gebrauchen, da es wohl häufiger vorkommen...
-
Forum: Object-Pascal / Delphi-Language
Delphi
by Totti,
26. Nov 2005
dann hab ich nen paar zigtausend zeichen in nem string .... ja.
Wie gesagt, ich muss lesen und bearbeiten, ich vesuch mal nen Beispiel zu konstruieren:
Totti
AS Roma
Ilary
Christian
27
09
1976
-
Forum: Object-Pascal / Delphi-Language
Delphi
by Totti,
25. Nov 2005
ne TSTringList verschlingt leider zuviele Ressourcen, braucht ergo zu lange ...
das sind Textdatein zwischen 400kb und 4MB ... da kommen einige Zeilen zusammen, leider :(
Aber wie es aussieht, muss es dann halt länger dauernn, was?
-
Forum: Object-Pascal / Delphi-Language
Delphi
by Totti,
14. Nov 2005
hmm, nunja .... hab ich j a hinbekommen.
Ich krieg aber nur Zeichen ersetzt - muss ich nu für jede Zeilenänderung alle nachfolgenden Zeichen nach vorne ziehen/nach hinten schieben?!?
Gibbet da absolut keine Alternative?
-
Forum: Object-Pascal / Delphi-Language
Delphi
by Totti,
12. Nov 2005
ne, seek läuft net bei textfile
Und mit TFilestream müsste ich statt readln dann immer ne funktion verwenden, die alle zeichen bis zum nächsten crlf ausgibt, gel?
-
Forum: Object-Pascal / Delphi-Language
Delphi
by Totti,
12. Nov 2005
Hi, gleich zu Beginn die Problemstellung:
Ich möchte in einer Textdatei lesen und gerne auch schreiben ... und zwar möglichst nach folgender Sytax ...
while x=t do readln(f,x); //das macht er beispielsweise 10x, weil dann zeile 11 netmehr gleich t ist
zeile_11:=u;
etc.
Also, das Problem ist halt, dass ich ja in der schleife die zeile 11 schon gelesen habe und der zeiger nun bereits am...