![]() |
Re: Erfassen und verarbeiten von Textdateien
Hallo an gg und an Alle, die bisher geantwortet haben. Zuerst natürlich einmal DANKE!
Zum besseren Verständnis meines Projektes sollte ich aber noch ein paar Hinweise geben. Also aus dem Quelltextfile werden nur die Angaben hinter "meldergruppenAdresse, kurzInfo und kommentar" benötigt. Diese sollen dann, aufsteigend nach meldergruppenAdresse, in ein Assemblerfile geschrieben werden. Wobei die Ausgabe im Assemblerfile lückenlos mit 1 beginnen und mit der letzten Adresse aus dem Quellfile enden muss. Alle "leeren" Adressen müssen also auch geschrieben werden. Die Form des Assemblerfiles ist folgende: ... ADR00113: DD ADR00113+ZAHL_UAD_02 ;meldergruppenAdresse 113-1 und 113-2 (also auch sortieren innerhalb der 113-...) DD ADR00113U01 ;unteradresse 1 DD ADR00113U02 ;unteradresse 2 DD ADR00114 ; nächste Adresse (ob im Quelltext vorhanden, oder nicht) ADR00113U01: DB "D EG 225 00" ; Eintrag für Unteradresse 1 ADR00113U02: DB "D EG 225 00" ; Eintrag für Unteradresse 2 ADR00114: DD ADR00114 + KEINE_UAD ; Adresse im Quellfile nicht vorhanden DD ADR00115 ; wieder nachfolgende Adresse DB KEINE_INFO,CR ; kein Eintrag, da nicht vorhanden ... Ich weiss, dass das nicht so einfach zu realisieren ist, schon gar nicht für einen Anfänger. Zumindest möchte ich es probieren um damit meinen Kollegen und mir unzählige Tipparbeiten zu ersparen. Also, für jeden noch so kleinen Tipp bin ich sehr dankbar. Viele Grüße Paule |
Re: Erfassen und verarbeiten von Textdateien
Hallo,
sorry, das hatte ich noch vergessen: der Eintrag bei den Unteradressen entspricht dem ausgelesenen String "kurzInfo". Mit dem Eintrag "kommentar" verhält es sich im Assemblerfile ähnlich. Aber das möchte ich erstmal aussen vor lassen. Wenn ich weiss, wie "kurzInfo" einbezogen wird, kann ich auch den "kommentar" nachrüsten (kommt eh selten vor). Viele Grüße Paule |
Re: Erfassen und verarbeiten von Textdateien
Hallo, folgende Vorgehensweise würde ich dir empfehlen:
1. Assemblerfile mit Platzhaltern versehen. Überall, wo ein String hinmuss, ein %s, überall, wo eine Zahl hinmuss, ein %d. Am besten durchnummerieren: %1s bzw. %2d usw. Das ganze ins programmverzeichnis speichern. 2. In deinem Programm das Textfile auslesen. TStringList erzeugen, NameValueSeparator := #32, Textdatei laden, alle Sachen die du brauchst per Values['key'] auslesen und in Variablen packen 3. Assemblerfile in einen string einlesen 4. [oh] ![]() 5. Das Ergebnis irgendwo hinspeichern. |
Re: Erfassen und verarbeiten von Textdateien
hallo paule,
dann ist's ja easy. da brauchste ja nur, bei jeden string seitwärts zu gehen und dein item zu füllen :-) das kannste ganz bequem mit 'ner procedure machen, der header sieht in etwa so aus...
Delphi-Quellcode:
und der aufruf in etwa so
function SplitAndSave(const item: titem; s: string): tItem;
Delphi-Quellcode:
in der routine zerlegst du dann deinen string mit copy/delete/pos und was dir sonst noch so einfällt und machst 'n add, wenn <>NIL zurückgeliefert wird. in dieser routine oder in deinenm object oder beim save, kannste dann noch allerhand kommentare ergänzen, je nachdem was dir spass macht.
SplitAndSave(item[i], sl[i]);
grüsse und noch viel erfolg gg |
Re: Erfassen und verarbeiten von Textdateien
Zitat:
Mit der TStringList sollte das alles wunderbar funktionieren. |
Re: Erfassen und verarbeiten von Textdateien
Hallo Leute,
da habt Ihr mir ja ein paar ganz schöne Hausaufgaben aufgegeben. Aber auf alle Fälle vielen Dank! Jetzt muss ich mich erst einmal näher mit den Vorschlägen beschäftigen, bin mir aber immer noch unsicher, ob ich das bewältige. Meine Zeiten mit Turbopascal liegen schon Jahrzehte zurück, so dass ich quasi von Vorne anfange. Klar, mein Projekt hört sich absolut simpel an, aber die Umsetzung ist für mich doch nicht so einfach. Aber mit Eurer Hilfe werde ich es bestimmt schaffen :roteyes: .Im Moment werde ich mich nochmal mit den Grundlagen beschäftigen, von denen ich bisher geglaubt habe, sie zu verstehen (beherrschen). Also, tolles Forum hier! Viele Grüße Paule |
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:31 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz