BATCH - 6-zeilige Textdatei in Verschiedenen Variablen speichern...
ich arbeite ja an diesem Tool mit dem ich Kunden und Rechnungen verwalten will :D
Jetzt möchte ich gerne eine 9 zeilige Textdatei in verschiedene Variabeln einlesen:
Aufbau Textdatei:
In den Variabeln soll das dann so aussehen:
usw.
Hinterher will ich mit den Variablen eine Rechnung erstellen, die ich dann auch versenden kann...
Wie ich das löse weiß ich noch nicht, von daher bin ich im Moment noch für alles offen
Nur die Textdateie als Ausgangspunkt sollte bleiben, denn der Rest des Tools ist bereits fertig (Adressdaten ändern, Kunden anlegen, usw.)...
Für Anregungen jeder Art bin ich dankbar,
Gruß, yaka
Jetzt möchte ich gerne eine 9 zeilige Textdatei in verschiedene Variabeln einlesen:
Aufbau Textdatei:
Nachname
Vorname
Straáe
Hausnummer
PLZ
Ort
eMail Adresse
Tel. Festnetz
Tel. Mobil
Tel. gesch„ftlich
Vorname
Straáe
Hausnummer
PLZ
Ort
eMail Adresse
Tel. Festnetz
Tel. Mobil
Tel. gesch„ftlich
In den Variabeln soll das dann so aussehen:
Nachname -> %EMPF_1%
Vorname -> %EMPF_2%
Vorname -> %EMPF_2%
usw.
Hinterher will ich mit den Variablen eine Rechnung erstellen, die ich dann auch versenden kann...
Wie ich das löse weiß ich noch nicht, von daher bin ich im Moment noch für alles offen
Nur die Textdateie als Ausgangspunkt sollte bleiben, denn der Rest des Tools ist bereits fertig (Adressdaten ändern, Kunden anlegen, usw.)...
Für Anregungen jeder Art bin ich dankbar,
Gruß, yaka
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 100634
Url: https://administrator.de/forum/batch-6-zeilige-textdatei-in-verschiedenen-variablen-speichern-100634.html
Ausgedruckt am: 15.01.2025 um 13:01 Uhr
4 Kommentare
Neuester Kommentar
Servus,
wie wäre es mit "Word Serienbrief" - ganz ohne Bastla, Biber und den anderen immer die "eigene" Arbeit aufzubürden?
Machst du ja bestimmt auch nicht per Batch - oder??
Gruß
wie wäre es mit "Word Serienbrief" - ganz ohne Bastla, Biber und den anderen immer die "eigene" Arbeit aufzubürden?
Nur die Textdateie als Ausgangspunkt sollte bleiben, denn der Rest des Tools ist bereits fertig (Adressdaten ändern, Kunden anlegen, usw.)..
Machst du ja bestimmt auch nicht per Batch - oder??
Gruß
Hallo yakazaa und TimoBeil!
Is ja nur ein Batch (und somit kein Grund, sich vielleicht noch in die Haare zu geraten) ...
Die "billigste" Lösung sähe etwa so aus: Wenn die verwendeten Variablen ein einheitliches Präfix (etwa "KDB_") erhielten (und daher zB mit "KDB_EMPF_1" etc benannt wären) und sich die durch das Schreiben der Variablennamen (= Feldnamen) in jeden Datensatz verschwendeten Bytes verkraften ließen, könnte einfach mit
der gesamte Satz geschrieben und mit
wieder eingelesen werden.
Zu überlegen wäre natürlich, wie nicht belegte Felder gekennzeichnet werden (da ansonsten die Variablen "verschwinden").
Plan B würde mit nummerierten Variablen arbeiten:
Grüße
bastla
P.S.: Die Textdatei hat inzwischen 10 Zeilen ...
Is ja nur ein Batch (und somit kein Grund, sich vielleicht noch in die Haare zu geraten) ...
Die "billigste" Lösung sähe etwa so aus: Wenn die verwendeten Variablen ein einheitliches Präfix (etwa "KDB_") erhielten (und daher zB mit "KDB_EMPF_1" etc benannt wären) und sich die durch das Schreiben der Variablennamen (= Feldnamen) in jeden Datensatz verschwendeten Bytes verkraften ließen, könnte einfach mit
set KDB_>Datei.txt
for /f "delims=" %%i in (Datei.txt) do set "%%i"
Zu überlegen wäre natürlich, wie nicht belegte Felder gekennzeichnet werden (da ansonsten die Variablen "verschwinden").
Plan B würde mit nummerierten Variablen arbeiten:
@echo off & setlocal
set "Dat=Datei.txt"
set Nr=0
for /f "tokens=1* delims=:" %%i in ('findstr /n "^" "%Dat%"') do call :ProcessLine %%i "%%j"
set FeldAnzahl=%Nr%
:: ab hier Verarbeitung
:: als Demo:
for /L %%i in (1,1,%FeldAnzahl%) do call echo KDB%%i: %%KDB%%i%%
:: bzw zum Schreiben:
del "%Dat%"
for /L %%i in (1,1,%FeldAnzahl%) do >>"%Dat%" call echo\%%KDB%%i%%
goto :eof
:ProcessLine
set /a Nr+=1
set "KDB%1=%~2"
goto :eof
bastla
P.S.: Die Textdatei hat inzwischen 10 Zeilen ...
Servus zusammen,
@yakazaa:
Ich denke wir schreiben aneinander vorbei - schau dir mal meinen unbearbeiteten Originalbeitrag an
Und von wegen "Sag bitte, bite nichts....ICH WEISS !!! "
Ich sage nicht, schreibe dir aber sehr gerne, daß ein Admin - der kein Batch / Shellscript beherrscht besser in einem anderen Job aufgehoben ist.
@ Bastla:
Nix für ungut und Grüße in die Runde
@yakazaa:
Ich denke wir schreiben aneinander vorbei - schau dir mal meinen unbearbeiteten Originalbeitrag an
Ich hab mir ne komplette Kundenverwaltung mit BATCH ge@bastla
Schon recht kann deinen Einwand gegenüber denbeiden wirklich nicht verstehen...
Lese meinen Beitrag doch mal bitte genauerUnd von wegen "Sag bitte, bite nichts....ICH WEISS !!! "
Ich sage nicht, schreibe dir aber sehr gerne, daß ein Admin - der kein Batch / Shellscript beherrscht besser in einem anderen Job aufgehoben ist.
@ Bastla:
und somit kein Grund, sich vielleicht noch in die Haare zu geraten
Auf gar keinen Fall - auf die wenigen - die ich noch habe - Passe ich sehr gut auf Nix für ungut und Grüße in die Runde