Auslesen einer Datei mit einem Anführungszeichen im Text
Hallo zusammen,
ich habe ein Problem, das ich auch nach einiger Recherche im Internet nicht gelöst bekomme:
Ich habe eine XML-Datei, in der sich ein Text mit nur einem "korrekten" Anführungszeichen und einem "anderem" Anführungszeichen befindet.
Text: ...und dessen "Käffche“ kriegt Momo überhaupt noch die Lern...
Ich habe es hinbekommen, den Text auszulesen, zu verändern und in eine andere Datei einzufügen mit folgendem Code:
Das funktioniert auch ohne Probleme.
Ich möchte aber einen Zähler programmieren, der die Austauschvorgänge zählt.
Wenn ich jetzt schreibe
dann stürzt die Batch ohne Vorwarnung ab.
Wie kann ich diesen Absturz verhindern?
Gruß
Klaus
ich habe ein Problem, das ich auch nach einiger Recherche im Internet nicht gelöst bekomme:
Ich habe eine XML-Datei, in der sich ein Text mit nur einem "korrekten" Anführungszeichen und einem "anderem" Anführungszeichen befindet.
Text: ...und dessen "Käffche“ kriegt Momo überhaupt noch die Lern...
Ich habe es hinbekommen, den Text auszulesen, zu verändern und in eine andere Datei einzufügen mit folgendem Code:
set WriteLine1=!Line:%Suchen1%=%Ersetzen1%!
set WriteLine2=!WriteLine1:%Suchen2%=%Ersetzen2%!
>>"%t%" echo !WriteLine2!
Das funktioniert auch ohne Probleme.
Ich möchte aber einen Zähler programmieren, der die Austauschvorgänge zählt.
Wenn ich jetzt schreibe
set WriteLine1=!Line:%Suchen1%=%Ersetzen1%!
set WriteLine2=!WriteLine1:%Suchen2%=%Ersetzen2%!
>>"%t%" echo !WriteLine2!
if "%WriteLine1%" NEQ "%Line%" set /a zaehler1=%zaehler1%+1
if "%WriteLine2%" NEQ "%WriteLine1%" set /a zaehler2=%zaehler2%+1
dann stürzt die Batch ohne Vorwarnung ab.
Wie kann ich diesen Absturz verhindern?
Gruß
Klaus
Please also mark the comments that contributed to the solution of the article
Content-Key: 255819
Url: https://administrator.de/contentid/255819
Printed on: April 20, 2024 at 04:04 o'clock
1 Comment
Hallo Klaus,
nimm entweder VBScript (unter Verwendung des MS-XML-Parsers, siehe hier) oder PowerShell für Deine Aufgabe. Batchscript ist für das Parsen und erst recht für das Schreiben von XML-Dateien ungeeignet. Erstens wegen dem Sonderzeichenproblem, über das Du gerade gestolpert bist, und zweitens wegen der Zeichencodierung (Batch arbeitet mit der Codepage OEM850, XML-Dateien sind sehr oft in UTF-8 codiert). Beim Neu-Schreiben der Datei kannst Du u.U. ihren Inhalt beschädigen.
Gruß
Friemler
nimm entweder VBScript (unter Verwendung des MS-XML-Parsers, siehe hier) oder PowerShell für Deine Aufgabe. Batchscript ist für das Parsen und erst recht für das Schreiben von XML-Dateien ungeeignet. Erstens wegen dem Sonderzeichenproblem, über das Du gerade gestolpert bist, und zweitens wegen der Zeichencodierung (Batch arbeitet mit der Codepage OEM850, XML-Dateien sind sehr oft in UTF-8 codiert). Beim Neu-Schreiben der Datei kannst Du u.U. ihren Inhalt beschädigen.
Gruß
Friemler