Ein Projekt, welches urspünglich in latin1 kodiert war, soll nun auf utf8 umgestellt werden. Wie kann diese Umkodierung möglichst sicher für einzelne Dateien, oder auch einen ganze Haufen Dateien, erfolgen?

gefragt 08 Nov '15, 21:06

Johannes's gravatar image

Johannes
7.3k294566
Akzeptiert-Rate: 43%

Die Frage ist zum Archivieren gedacht, kein Support benötigt. Antworten sind jedoch sehr willkommen! Evtl. antworte ich auch selbst.

(08 Nov '15, 21:07) Johannes
1

Siehe auch die Antwort von @Ijon auf Warum werden die Umlaute falsch dargestellt?.

(08 Nov '15, 22:17) esdd

Schließen als Duplikat? Kann sich noch jemand irgendwas ausdenken, dasss die Frage nicht ganz so karg ist? Oder vollständig löschen?

(09 Nov '15, 12:15) Johannes

@Johannes: Evtl. kann man das hier konkret ausführlicher beantworten und von der anderen Frage aus hierher verweisen. Umkodieren ist da nur ein Punkt. Hier könnte man sich platzmäßig auch auslassen, und z.B. eine Antwort mit Screenshot für seinen Lieblings-Editor schreiben. Dann gibt es noch Tools wie recode und iconv. Letzteres ist z.B. auf einem Mac direkt verfügbar. Es ist tatsächlich eine sehr wichtige Frage, daher finde ich es sehr gut, ihr hier den Platz und die Besprechung zu widmen.

(09 Nov '15, 13:37) stefan ♦♦

@Stefan Stimmt, du hast recht. Sowas wie iconv fehlt noch in der anderen Antwort, daran hatte ich gar nicht mehr gedacht. Das mit dem Lieblingseditor ist aber denke ich in http://texwelt.de/wissen/fragen/2656/wie-uberprufe-ich-die-standardeingabekodierung-in-meinem-editor schon hinreichend besprochen.

(09 Nov '15, 14:00) Johannes

Unter GNU/Linux kann man ein kleines Werkzeug aus der GNU Standardbibliothek names iconv verwenden. Damit lassen sich Dateien zwischen einer Vielzahl von Kodierungen hin und her konvertieren.

$ file test.txt 
test.txt: UTF-8 Unicode text
$ iconv -f UTF-8 -t ISO-8859-15 test.txt > test-latin1.txt
$ file test-latin1.txt 
test-latin1.txt: ISO-8859 text
$ iconv -f ISO-8859-15 test-latin1.txt > test-utf8.txt
$ file test-utf8.txt 
test-utf8.txt: UTF-8 Unicode text
Permanenter link

beantwortet 23 Jan '16, 12:57

Henri's gravatar image

Henri
15.7k133943
Akzeptiert-Rate: 46%

Eine Umkodierung ist mit einem (modernen) Editor - wie zum Beispiel Notepad++ - wie folgt möglich:

alt text

Hierbei zeigt der Punkt die aktuelle Dateikodierung an.

Eine Konvertierung mehrerer Datein ist beispielsweise mittels Skript möglich. Mehr dazu hier:

Permanenter link

beantwortet 09 Nov '15, 13:14

dzaic's gravatar image

dzaic
631154954
Akzeptiert-Rate: 42%

bearbeitet 09 Nov '15, 13:16

Mit TeXmaker kann man ebenfalls Dateien in utf8 umwandeln. Man wählt dazu im Menü Tools den Eintrag Convert to unicode. Im Dialog:

Convert to unicode

wählt man dann über den kleinen Kopf oben rechts die gewünschte Datei aus, gibt zusätzlich an, in welcher Codierung die Datei vorliegt (im Beispiel wäre das ISO-8859-1 aka ISO-Latin-1 aka latin1) und klickt dann auf Convert to unicode. Nun wird die umgewandelte Datei angezeigt, so dass man noch kontrollieren kann, ob alles korrekt funktioniert hat. Stimmt etwas nicht, so war vermutlich die Ausgangscodierung falsch angegeben. Also ggf. ändern und erneut versuchen.

Wenn alles passt klickt man auf das kleine Diskettensymbol links über dem Bereich mit dem Konvertierungsergebnis. Nun kann man einen Dateinamen auswählen, unter dem man die konvertierte Datei speichert. Ich empfehle unbedingt, die konvertierten Dateien in einem neuen Verzeichnis zu speichern, so dass man notfalls die Originaldateien noch hat.

Permanenter link

beantwortet 04 Dez '17, 19:47

gast3's gravatar image

gast3
(ausgesetzt)
Akzeptiert-Rate: 53%

Deine Antwort
Vorschau umschalten

Folgen dieser Frage

Per E-Mail:

Wenn sie sich anmelden, kommen Sie für alle Updates hier in Frage

Per RSS:

Antworten

Antworten und Kommentare

Markdown-Grundlagen

  • *kursiv* oder _kursiv_
  • **Fett** oder __Fett__
  • Link:[Text](http://url.com/ "Titel")
  • Bild?![alt Text](/path/img.jpg "Titel")
  • nummerierte Liste: 1. Foo 2. Bar
  • zum Hinzufügen ein Zeilenumbruchs fügen Sie einfach zwei Leerzeichen an die Stelle an der die neue Linie sein soll.
  • grundlegende HTML-Tags werden ebenfalls unterstützt

Frage-Themen:

×117
×18
×9

gestellte Frage: 08 Nov '15, 21:06

Frage wurde gesehen: 15,914 Mal

zuletzt geändert: 04 Dez '17, 19:47