FraFu: Suche ascii to utf-8 batch converter für Windows

Hallo!

Ich habe hier Dateien liegen, die teilweise in ISO-8859-1 und teilweise schon in UTF-8 kodierung vorliegen.
Ich möchte jetzt alle Dateien in UTF-8 umwandeln.
UltraEdit hab ich zur Verfügung, der kann das aber AFAIK nicht im Batch Modus machen.

Was ich gefunden hätte, wäre iconv, das ist aber für Liunux.

Desweiteren hab ich nicht so wirklich eine Ahnung, wie ich schnell rausfinde, wie eine Datei abgespeichert ist. Mit welchem Programm/Editor läßt sich das auf einen Blick erkennen?

Noch eine Frage zu Eclipse. Eclipse kann UTF-8 Dateien zwar lesen, ich habe aber die Vermutung, dass es die Dateien im ISO-8859-1 Modus abspeichert. Wie bring ich Eclipse dazu, Dateien standardmäßig in UTF-8 abzuspeichern?

mfg
  frafu

  1. Hallo frafru!

    Ich habe hier Dateien liegen, die teilweise in ISO-8859-1 und teilweise schon in UTF-8 kodierung vorliegen.
    Ich möchte jetzt alle Dateien in UTF-8 umwandeln.

    Desweiteren hab ich nicht so wirklich eine Ahnung, wie ich schnell rausfinde, wie eine Datei abgespeichert ist. Mit welchem Programm/Editor läßt sich das auf einen Blick erkennen?

    Das ist auch gar nicht so leicht. In einer Textdatei gibt es keinen Hinweis, man kann nur nachsehen ob die Texte lesbar sind. Um das automatisch zu machen muss ein Programm erkennen ob der Text lesbar ist. Das funktioniert vermutlich nur bedingt. (Ohne Hinweis welche Sprache oder Programmiersprache verwendet wird und die entsprechenden Wörterbücher oder zumindest Regeln sehe ich da eher keine Chance)

    Noch eine Frage zu Eclipse. Eclipse kann UTF-8 Dateien zwar lesen, ich habe aber die Vermutung, dass es die Dateien im ISO-8859-1 Modus abspeichert. Wie bring ich Eclipse dazu, Dateien standardmäßig in UTF-8 abzuspeichern?

    Unter Project Properties Info kann man die Einstellungen für das Projekt festlegen.

    Viele Grüße

    H-P Ortner

    1. Moin!

      Desweiteren hab ich nicht so wirklich eine Ahnung, wie ich schnell rausfinde, wie eine Datei abgespeichert ist. Mit welchem Programm/Editor läßt sich das auf einen Blick erkennen?

      Das ist auch gar nicht so leicht. In einer Textdatei gibt es keinen Hinweis, man kann nur nachsehen ob die Texte lesbar sind. Um das automatisch zu machen muss ein Programm erkennen ob der Text lesbar ist. Das funktioniert vermutlich nur bedingt. (Ohne Hinweis welche Sprache oder Programmiersprache verwendet wird und die entsprechenden Wörterbücher oder zumindest Regeln sehe ich da eher keine Chance)

      Das einzige, was man tun kann: Aus der Gesamtheit aller möglicher Codierungen diejenigen ausschließen, die es aufgrund von illegalen Bytewerten, die im Bytestrom vorkommen, nicht sein können.

      Wenn danach noch mehr als eine Codierung übrig bleibt, muß man raten. Heuristische Methoden zur Ermittlung einer "wahrscheinlichsten" Codierung können allerdings immer fehlschlagen.

      Bei der Ausgangslage "ISO-8859-1" vs. "UTF-8" allerdings hat man wieder bessere Karten. Alle Texte, bei denen die Bytes allesamt das 8. Bit nicht gesetzt haben, sind in beiden Codierungen identisch.

      Und Texte mit Umlauten sind in der ISO-Form eindeutig identifizierbar, weil sie ungültiges UTF-8 darstellen. UTF-8 ist umgekehrt zwar gültiges ISO-8859-1, dürfte aber zumindest ziemlich charakteristische "Umlaute" enthalten - man kann also auch da raten.

      - Sven Rautenberg

      --
      "Love your nation - respect the others."
      1. Hallo!

        Das ist auch gar nicht so leicht. In einer Textdatei gibt es keinen Hinweis, man kann nur nachsehen ob die Texte lesbar sind.

        Ok. Danke für die Hinweise. Ich dachte bei UTF-8 wird in der Datei auch noch ein Prefix gespeichert, dass es sich um UTF-8 handelt. Das war offensichtlich ein Irrglaube.

        mfg
          frafu

        1. Hallo FraFu.

          Das ist auch gar nicht so leicht. In einer Textdatei gibt es keinen Hinweis, man kann nur nachsehen ob die Texte lesbar sind.

          Ok. Danke für die Hinweise. Ich dachte bei UTF-8 wird in der Datei auch noch ein Prefix gespeichert, dass es sich um UTF-8 handelt. Das war offensichtlich ein Irrglaube.

          Die BOM – wovon du vermutlich sprichst – ist bei UTF-8 optional.

          Einen schönen Montag noch.

          Gruß, Mathias

          --
          sh:( fo:} ch:? rl:( br: n4:~ ie:{ mo:| va:) de:> zu:} fl:( ss:) ls:[ js:|
          „It is required that HTML be a common language between all platforms. This implies no device-specific markup, or anything which requires control over fonts or colors, for example. This is in keeping with the SGML ideal.“
          [HTML Design Constraints: Logical Markup]
          1. Hallo Mathias,

            Ok. Danke für die Hinweise. Ich dachte bei UTF-8 wird in der Datei auch noch ein Prefix gespeichert, dass es sich um UTF-8 handelt. Das war offensichtlich ein Irrglaube.

            Die BOM – wovon du vermutlich sprichst – ist bei UTF-8 optional.

            und ihr Vorhandensein kann im Webumfeld katastrophale Folgen haben ...

            Freundliche Grüße

            Vinzenz

          2. Hallo!

            Die BOM – wovon du vermutlich sprichst – ist bei UTF-8 optional.

            Ja, das hab ich gemeint. Danke für den Link.

            mfg
              frafu

  2. Hey,

    iconv, das ist aber für Liunux.

    gibt's auch für Windows.
    http://gnuwin32.sf.net/packages.html
    http://cygwin.com/

    Desweiteren hab ich nicht so wirklich eine Ahnung, wie ich schnell rausfinde, wie eine Datei abgespeichert ist. Mit welchem Programm/Editor läßt sich das auf einen Blick erkennen?

    Meiner Erfahrung nach hat Mozilla die beste Heuristik, logisch, wenn man die Problemdomäne bedenkt. Auch wenn Sven Rautenberg schon gesagt hat, wie du speziell dein Problem SELF lösen kannst, lässt sich die Erkennung in einer Programmiersprache deiner Wahl schon zeitsparend automatisieren:
    http://www.mozilla.org/projects/intl/detectorsrc.html
    http://search.cpan.org/dist/Encode-Detect
    http://www.i18nfaq.com/chardet.html

    --
    水-金-地-火-木-土-天-海-冥
    1. Hallo!

      Hey,

      iconv, das ist aber für Liunux.
      gibt's auch für Windows.
      http://gnuwin32.sf.net/packages.html
      http://cygwin.com/

      Ich schaffs leider nicht Cygwin auf meinem Rechner in der Arbeit zu installieren. Der Installationsvorganng bricht immer mittendrin ab mit einer Meldung, dass er die Packages nicht lesen kann.
      Keine Ahnung woran das hängt. Adminrechte hab ich.
      Zuhause auf meinem Privatrechner hab ich Cygwin ohne Probleme installiert.

      http://www.mozilla.org/projects/intl/detectorsrc.html
      http://search.cpan.org/dist/Encode-Detect
      http://www.i18nfaq.com/chardet.html

      Danke für die Links. Werd ich mir anschauen.

      mfg
        frafu