Falsche Umlaute beim auslesen einer .txt mit batch
Hi Leute,
ich habe folgendes Problem:
Ich möchte mit einer Batch Datei eine .txt Datei auslesen.
Das ausgelesene wird dann mit echo %var1%.....%var20% wiedergegeben.
Dabei werden die Umlaute ÜüÖöÄä un ß im cmd falsch dargestellt.
Ich habe chcp 1252 un das cmd ist in den Eigenschaften auf Schriftart 'Lucida Console'
Also wenn ich echo ÜüÖöÄäß eingebe wird auch ÜüÖöÄäß wiedergegeben.
Nur beim Auslesen der .txt wird es falsch ausgelesen/wiedergegeben.
Vielen Dank schonmal für Eure Hilfe
Hier mein Script
______________________________________________________________________________
chcp 1252
@echo off &setlocal
for /f "delims=" %%i in (beliebige.txt) do set tempvar=%%i &call :sub
echo %var1%
echo %var2%
...
echo %var20%
pause
goto :eof
:sub
set /a n+=1
set var%n%=%tempvar%
goto :eof
______________________________________________________________________________
ich habe folgendes Problem:
Ich möchte mit einer Batch Datei eine .txt Datei auslesen.
Das ausgelesene wird dann mit echo %var1%.....%var20% wiedergegeben.
Dabei werden die Umlaute ÜüÖöÄä un ß im cmd falsch dargestellt.
Ich habe chcp 1252 un das cmd ist in den Eigenschaften auf Schriftart 'Lucida Console'
Also wenn ich echo ÜüÖöÄäß eingebe wird auch ÜüÖöÄäß wiedergegeben.
Nur beim Auslesen der .txt wird es falsch ausgelesen/wiedergegeben.
Vielen Dank schonmal für Eure Hilfe
Hier mein Script
______________________________________________________________________________
chcp 1252
@echo off &setlocal
for /f "delims=" %%i in (beliebige.txt) do set tempvar=%%i &call :sub
echo %var1%
echo %var2%
...
echo %var20%
pause
goto :eof
:sub
set /a n+=1
set var%n%=%tempvar%
goto :eof
______________________________________________________________________________
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 302760
Url: https://administrator.de/contentid/302760
Ausgedruckt am: 22.11.2024 um 16:11 Uhr
2 Kommentare
Neuester Kommentar
Hallo pdiddo,
wie oft wir diese Frage wohl schon beantwortet haben ...
Nun hätte ich aber auch eine Frage. Warum speichert man erst jede Zeile in eine Variable, wenn man ebenso gut gleich mit der FOR Variable der ersten Schleife arbeiten könnte?
Grüße
rubberman
wie oft wir diese Frage wohl schon beantwortet haben ...
@echo off &setlocal
>nul chcp 1252
for /f "tokens=1* delims=:" %%i in ('findstr /n "^" "beliebige.txt"') do set "var%%i=%%j" &set /a "n=%%i"
>nul chcp 850
setlocal EnableDelayedExpansion
for /l %%i in (1 1 %n%) do echo(!var%%i!
pause
Grüße
rubberman