Neuigkeiten:

Wenn ihr euch für eine gute Antwort bedanken möchtet, im entsprechenden Posting einfach den Knopf "sag Danke" drücken!

Mobiles Hauptmenü

Codierung einer Textdatei prüfen bzw. feststellen

Begonnen von UliBrenn, Februar 04, 2014, 21:15:12

⏪ vorheriges - nächstes ⏩

UliBrenn

Hallo zusammen!
Ich habe einen Import über die TransferText-Methode in VBA erstellt und importiere darüber txt-Dateien. Diese sind in der Regel UTF-8 codiert – aber eben nur in aller Regel. Sind diese in einer anderen Codierung, so habe ich das Problem mit den Umlauten(salat), falls ich vergesse, die Datei in einem Editor vorher manuell zu überprüfen.
Ich suche nun eine VBA-Routine, die die Codierung der (Import-)Textdatei überprüft bzw. angibt, damit ich ggf. die Datei in einem Editor als UTF-8 abspeichern kann.
Mein Ziel ist es, in der Importroutine eine If-Prüfung zu schreiben, die den Sub beendet, falls es keine UTF-8 Datei ist.
Über eine Suchmaschine habe ich einiges zum Thema Dateiattribute gefunden. Darunter allerdings nichts, wie ich die Codierung feststellen kann. Die gefundenen Threads (die ich zumindest verstanden habe) befassen sich mit Attributen, wie letzte Änderung oder Dateityp, auslesen.
Erfahren habe ich, dass die Codierung einer Textdatei in den ersten Bytes der Datei angegeben ist (?).
Eine Seite, die sich mit dem Thema befasst ist
http://www.vovisoft.com/unicode/UniFunctions.htm#ToUTF8
Allerdings ist mir nicht klar, wie ich die gewonnen Erkenntnisse nutzen kann, da ich den VBA-Code nicht ganz verstehe bzw. nicht weiß, wie ich die Funktionen einsetze.
Deshalb freue mich über jeden Hinweis! Danke für Eure Hilfe!  :)
Viele Grüße UB

Hondo

Hallo,
statt umständlich zu prüfen würde ich gleich die Datei nach UTF-8 umwandeln.
Code dazu gibts im Netz zu Hauf.

Andreas

UliBrenn

Hallo Hondo! Hab vielen Dank! Ich wollte eben die richtig codierten Textdateien umberührt lassen. Aber Du hast natürlich recht...
Für alle Mitleser/innen: Ich habe einen Code unter
http://cboden.de/index.php/softwareentwicklung/vba/tipps-tricks/19-utf8-einlesen
gefunden. Nach einem ersten Test hat er funktioniert.
Details zum Thema gibt es auch unter
http://www.activevb.de/rubriken/faq/faq0155.html
Viele Grüße!

Hondo

Alles klar.
vorallem die Seite activevb kann ich sehr empfehlen, bin dort täglich anzutreffen.