Batch für Textdatei - Sonderzeichen an bestimmter Stelle in fortlaufender Ausgabe
Hallo Zusammen,
ich habe ein Problem, bei dem ich nicht weiterkomme und Euere Hilfe benötige.
Ich habe eine Textdatei, in der die Datensätze einer Access-Tabelle in einer festen Länge bzw. Abständen zwischen den Werten ausgegeben werden.
Beispiel
A1 Schmidt Stefan 12061975 PB A2 Huber Karl 11111988 PB A3 Mustermann
Um die Datei weiterzuverarbeiten, benötige ich das "#"-Zeichen, jeweils genau an der 3. Stelle hinter dem Wert "PB" oder der 3. Stelle vor "A....".
Lediglich vor dem ersten A bzw. dem letzten PB soll kein # eingefügt werden.
Ergebnis
A1 Schmidt Stefan 12061975 PB # A2 Huber Karl 11111988 PB # A3 Mustermann
Mit Access habe ich es bei der Ausgabe nicht hinbekommen.
Hat jemand eine Idee?
Danke und Gruss
Stefan
ich habe ein Problem, bei dem ich nicht weiterkomme und Euere Hilfe benötige.
Ich habe eine Textdatei, in der die Datensätze einer Access-Tabelle in einer festen Länge bzw. Abständen zwischen den Werten ausgegeben werden.
Beispiel
A1 Schmidt Stefan 12061975 PB A2 Huber Karl 11111988 PB A3 Mustermann
Um die Datei weiterzuverarbeiten, benötige ich das "#"-Zeichen, jeweils genau an der 3. Stelle hinter dem Wert "PB" oder der 3. Stelle vor "A....".
Lediglich vor dem ersten A bzw. dem letzten PB soll kein # eingefügt werden.
Ergebnis
A1 Schmidt Stefan 12061975 PB # A2 Huber Karl 11111988 PB # A3 Mustermann
Mit Access habe ich es bei der Ausgabe nicht hinbekommen.
Hat jemand eine Idee?
Danke und Gruss
Stefan
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 274140
Url: https://administrator.de/contentid/274140
Ausgedruckt am: 23.11.2024 um 06:11 Uhr
4 Kommentare
Neuester Kommentar
Hi =)
Das würde mit einer Batch wesentlich komplizierter werden, als wenn du das mit einem kleinen Programm machen würdest.
Dort könntest du dir beispielsweise mit einem Stringbuffer oder Stringbuilder (Java) in einer entsprechenden Schleife alles zusammenbasteln. Dürfte ein 10 Zeiler werden^^
Allerdings bin ich in der Batch-Programmierung lang nicht zu gut wie Andere hier, die vielleicht doch eine leichtere Lösung kennen.
Aber ich würde ein kleines Programm dafür schreiben.
Das würde mit einer Batch wesentlich komplizierter werden, als wenn du das mit einem kleinen Programm machen würdest.
Dort könntest du dir beispielsweise mit einem Stringbuffer oder Stringbuilder (Java) in einer entsprechenden Schleife alles zusammenbasteln. Dürfte ein 10 Zeiler werden^^
Allerdings bin ich in der Batch-Programmierung lang nicht zu gut wie Andere hier, die vielleicht doch eine leichtere Lösung kennen.
Aber ich würde ein kleines Programm dafür schreiben.
Hallo Steven123 und willkommen im Forum!
Ich sähe es zwar als sinnvoller an, die Daten (aus Access) bereits passend auszugeben - aber da nach einem Batch gefragt war, im einfachsten Fall etwa so:
Grüße
bastla
Ich sähe es zwar als sinnvoller an, die Daten (aus Access) bereits passend auszugeben - aber da nach einem Batch gefragt war, im einfachsten Fall etwa so:
@echo off & setlocal
set "Ein=D:\Daten_ein.txt"
set "Aus=D:\Daten_aus.txt"
set "Von=PB A"
set "Nach=PB # A"
del "%Aus%" 2nul
for /f "usebackq delims=" %%i in ("%Ein%") do (
set "Satz=%%i"
setlocal enabledelayedexpansion
>>"%Aus%" echo !Satz:%Von%=%Nach%!
endlocal
)
bastla