Konvertierung von Textdateien: utf-8 -> iso8859-1

Du suchst ein Programm für einen bestimmten Zweck?
Antworten
Benutzeravatar
I.C.Wiener
Beiträge: 674
Registriert: 19.08.2003 18:45:35

Konvertierung von Textdateien: utf-8 -> iso8859-1

Beitrag von I.C.Wiener » 22.02.2006 03:52:16

Hallo,

ich suche eine Möglichkeit viele Textdateien (html, php, pl, ...) von utf-8 nach iso8859-1 zu konvertieren.
Gibt es dafür ein schönes Programm und wie sieht es da mit möglichen Problemen aus?

Und kann man irgendwo die aktuelle Kodierung der Dateien anzeigen?

Jede Datei in einem entsprechenden Editor zu öffnen und in dem anderen Zeichensatz zu speichern ist zwar eine Option, aber nicht sehr schön.

MfG
Who is... LAIN?

yeti

Beitrag von yeti » 22.02.2006 04:03:49

Schau mal ob "recode" das hinkriegt...

DeletedUserReAsG

Beitrag von DeletedUserReAsG » 22.02.2006 04:54:00

Ansonsten ist sowas mit grep/sed schnell gemacht :)

cu

yeti

Beitrag von yeti » 22.02.2006 05:10:35

niemand hat geschrieben:Ansonsten ist sowas mit grep/sed schnell gemacht :)
So a la ... if grep findet böse Zeichen then sed da mal drin rum?
Oder an welcher Stelle kommt bei Dir grep ins Spiel?

DeletedUserReAsG

Beitrag von DeletedUserReAsG » 22.02.2006 05:43:54

So a la ... if grep findet böse Zeichen then sed da mal drin rum?
Oder an welcher Stelle kommt bei Dir grep ins Spiel?
Ziemlich gut erkannt, ja. Threadstarter schrieb von vielen Dateien, und bevor ich viele Dateien pauschal durch sed schick, greppe ich lieber erstmal, ob das überhaupt notwendig ist. Ansonsten:
Und kann man irgendwo die aktuelle Kodierung der Dateien anzeigen?
cu

Benutzeravatar
I.C.Wiener
Beiträge: 674
Registriert: 19.08.2003 18:45:35

Beitrag von I.C.Wiener » 22.02.2006 06:26:27

Moin,

danke für eure Antworten.

recode ist ganz schön umfangreich, kann aber (glaub ich) nicht die aktuelle Kodierung anzeigen. Ich habe dazu nichts gefunden.
Die grep/sed-Geschichte kann ich mir mal ansehen, wenn ich wirklich verstanden habe, worum es bei diesen ganzen Kodierungen und so geht. Da scheine ich noch etwas Nachholbedarf zu haben.

Ich habe gerade noch etwas gelesen und es scheint wohl so, dass der die Zeichensatzkodierung egal ist, solange keine entsprechenden Zeichen enthalten sind.

Ich habe hier alle Umlaute und so Zeug als Entities kodiert

Code: Alles auswählen

ä => ä
...
Ist es dabei dann egal, wie der Webserver die Daten rausgibt?
Der Webserver, bzw die Skripte schicken alles als iso8859-1 raus. Ich habe die Dateien aber bei mir jetzt in utf-8.
Sehe ich das richtig, dass das erst zu Problemen führt, wenn ich aus Versehen mal Umlaute unkodiert eingebe, oder kann es da auch mal mit Markup-Daten

Code: Alles auswählen

<>$%#@...
zu Problemen kommen?

'file' scheint das irgendwie anzeigen zu können. Leider verstehe ich die Ausgabe nicht ganz.

Code: Alles auswählen

$ file *
bugs.html:              PHP script text
translations.inc:       PHP script text
users.html:             ASCII text
versions.html:          exported SGML document text

Code: Alles auswählen

$ file -i *
bugs.html:              text/plain; charset=us-ascii
translations.inc:       text/x-c++; charset=us-ascii
users.html:             text/plain; charset=us-ascii
versions.html:          text/html
Selbst wenn ich da Umlaute reinschreibe, steht da "us-ascii". Das kann ja so nicht stimmen. Auch die versions.html unterscheidet sich nicht von den anderen Dateien, warum steht bei ihr nichts?
Mir ist schon klar, dass ihr mir das auch nicht so einfach erklären könnt. Ich wollte nur eben rückmelden, dass ich mit 'file' rumspiele. :)

MfG
Who is... LAIN?

Benutzeravatar
I.C.Wiener
Beiträge: 674
Registriert: 19.08.2003 18:45:35

Beitrag von I.C.Wiener » 22.02.2006 20:00:22

Ich habe jetzt noch das Programm 'iconv' gefunden, welches etwas einfacher gestrickt zu sein scheint als 'recode'.
Das wird für mich wohl zusammen mit 'file' seinen Dienst tun.

MfG
Who is... LAIN?

Antworten