Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Umlaute in Textdatei mit Eingabeaufforderung korrekt wiedergeben?

Frage Microsoft Windows Server

Mitglied: AlbertMinrich

AlbertMinrich (Level 2) - Jetzt verbinden

19.03.2008, aktualisiert 19:10 Uhr, 14756 Aufrufe, 7 Kommentare

Hallo,

ich hab eine mit notepad erstellte Textdatei test.txt, in der steht Müller.
Wenn ich jetzt in der Eingabeaufforderung
type test.txt schreibe, kommt als Ausgabe
m3ller

Wenn ich die Datei nicht mit notepad sondern mit edit erstelle, wird es korrekt dargestellt. Bringt mir aber nichts, weil ich bereits eine bestehene (mit notepad) erstellte Datei mit jeder Menge Inhalt habe.

Was kann ich tun?


Danke
Martin
Mitglied: misterdemeanor
19.03.2008 um 16:12 Uhr
Grüß Dich Martin,

das liegt an der Codierung. Der type Befehl war dazu gedacht ASCII Dateien auszugeben.
ASCII enthält 128 Zeichen.
Wenn Du mit notepad.exe eine .txt Datei speicherst wird standardmäßig in ANSI codiert.
ANSI enthält 256 Zeichen wobei die ersten 128 Zeichen ASCII-identisch sind.

Normalerweise wird in der MS-DOS Eingabeaufforderung die Codepapage 850 verwendet. Das (kombiniert mit einer ANSI codierten .txt) führt zu Deinem Problem.

Wenn Du Deine .txt´s in Notepad als Unicode codiert speicherst gibt es keine Probleme.

Allerdings weiß ich nicht was dort als Unicode gemeint ist da es auch die Auswahlmöglichkeiten UTF-8 und Unicode Big Endian gibt. Nun nehme ich einfach mal an das es sich hier bei Unicode um UTF-8 (oder 16 oder 32) Little Endian ohne BOM handelt...vielleicht aber auch UCS-2 Big Endian...wer blickt da noch durch

BG, Felix -misterdemeanor-

PS: Notepad++
Bitte warten ..
Mitglied: AlbertMinrich
19.03.2008 um 16:31 Uhr
Danke für die Antwort.

Ich hab´s mit allen vier Varianten ausprobiert.
Mit Unicode ist zwar die type-Ausgabe korrekt, aber es klappt nicht mit dem for-Befehl (for /F %i in (test.txt) do echo %i). Da wird dann gar nichts ausgegeben.
Die anderen beiden Unicode Bid Endian und UTF-8 gehen auch nicht.

Aber egal, ich hab´s jetzt per vbs gemacht.

Gruß
Martin
Bitte warten ..
Mitglied: bastla
19.03.2008 um 17:18 Uhr
Hallo AlbertMinrich!

Für's nächste Mal: Wenn Du mit
01.
chcp 1252>nul
eine passende Codepage aktivierst, sollte es auch in Batch klappen ...

Grüße
bastla

P.S.: Der erwähnte Notepad++ ist auch für VBS sehr zu empfehlen ...
Bitte warten ..
Mitglied: AlbertMinrich
19.03.2008 um 17:46 Uhr
Das hatte ich vor meinem ersten Post schon probiert. Hat aber auch nichts geändert.
Auch jetzt mit den 4 verschiedenen notepad-Varianten (Ansi, Unicode...) klappt´s mit keiner.
Bitte warten ..
Mitglied: misterdemeanor
19.03.2008 um 18:47 Uhr
Hallo nochmal,

Auch jetzt mit den 4 verschiedenen notepad-Varianten (Ansi, Unicode...) klappt´s mit keiner.

Wenn ich die Codepage 1252 mit der ANSI Tabelle vergleiche fällt mir auf das die Umlaute(ä,ö,ü,Ä,Ö,Ü) gleiche Codes haben.

Wenn ich mit notepad.exe eine Datei mit dem Inhalt "ä,ö,ü,Ä,Ö,Ü" als test.txt im ANSI Format speichere und am cmd.exe-Prompt
01.
chcp 1252 <Enter> 
02.
type test.txt <Enter>
eingebe, bekomme ich eine korrekt "formatierte" Ausgabe. Ebenso wenn ich test.txt im "Unicode" Format abspeichere.

Könnte es an Deiner Batch Datei gelegen haben? Also ich persönlich hab mit Batch nix am Hut und wenn ich in eine .bat
01.
@echo off 
02.
for /F %i in (test.txt) do echo %i
eintippe und ausführe wird mir nur angezeigt Syntaxfehler. Aber ich kam auch nicht auf den Gedanken help for einzutippen

Aber egal, ich hab´s jetzt per vbs gemacht.

OK, vielleicht lässt Du Biber´s Batch-Azubi doch noch einen Blick auf den Code der ehemaligen Batchdatei werfen. Selbstredend nur wenn Du selbst noch interessierst bist, bzw. bastla "Lust" dazu hat.
Ansonsten vermesse ich mich mal Dich dazu zu bitten n Beitrag als gelöst zu markieren.

BG, Felix -misterdemeanor-
Bitte warten ..
Mitglied: bastla
19.03.2008 um 19:04 Uhr
@misterdemeanor

Vielleicht solltest Du Dich auch bei Biber bewerben ...

Dein Batch-Beispiel mit einfachen %-Zeichen funktioniert übrigens zwar als Direkteingabe, benötigt aber als gespeicherter Batch die Schreibweise %%i.

Grüße
bastla
Bitte warten ..
Mitglied: misterdemeanor
19.03.2008 um 19:10 Uhr
@bastla

Vielleicht solltest Du Dich auch bei Biber
bewerben ...

Und Batchen lernen? Als VB´ler bin ich froh genug noch eine kleine Stufe weiter über dem von C´lern definiertem"Abschaum" zu stehen

Dein Batch-Beispiel mit einfachen %-Zeichen funktioniert übrigens zwar als
Direkteingabe, benötigt aber als gespeicherter Batch die Schreibweise %%i.

Ah, OK, hatte es aus einem Post von Martin kopiert...

BG, Felix -misterdemeanor-
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(8)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
IDE & Editoren
Eclipse: Couldnt create a VM. Nicht alles korrekt installiert? (1)

Frage von EmoZioN zum Thema IDE & Editoren ...

Batch & Shell
gelöst Powershell - In Textdatei suchen und ersetzen (5)

Frage von Raaja89 zum Thema Batch & Shell ...

Exchange Server
gelöst Exchange 2013 - Abwesenheitsnachricht Umlaute werden nicht dargestellt (3)

Frage von staybb zum Thema Exchange Server ...

Windows Server
gelöst Clients erhalten keine Updates obwohl WSUS "korrekt" konfiguriert (11)

Frage von takvorian zum Thema Windows Server ...

Heiß diskutierte Inhalte
Microsoft
Ordner mit LW-Buchstaben versehen und benennen (20)

Frage von Xaero1982 zum Thema Microsoft ...

Outlook & Mail
gelöst Outlook 2010 findet ost datei nicht (19)

Frage von Floh21 zum Thema Outlook & Mail ...

Netzwerkmanagement
gelöst Anregungen, kleiner Betrieb, IT-Umgebung (18)

Frage von Unwichtig zum Thema Netzwerkmanagement ...

Festplatten, SSD, Raid
M.2 SSD wird nicht erkannt (14)

Frage von uridium69 zum Thema Festplatten, SSD, Raid ...