AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Probleme mit UTF-8

Ein Thema von BenTech · begonnen am 6. Mär 2007 · letzter Beitrag vom 9. Mär 2007
 
Ydobon

Registriert seit: 3. Mär 2006
264 Beiträge
 
Delphi 11 Alexandria
 
#8

Re: Probleme mit UTF-8

  Alt 7. Mär 2007, 16:36
Besser nicht auf eine BOM verlassen, sonst ist man schneller selbiges, als man möchte. Dass bei deiner Datei keine dabei war, hast du ja gemerkt. Wenn es nur um XML geht, sollte man davon ausgehen können, dass hier die Codierung noch einmal direkt in der Datei angegeben ist. Wenn ich mich richtig erinnere, gab es hier vor nicht allzu langer Zeit auch schon mal ein längeres Thema dazu.

Ansonsten ist die Erkennung der Codierung ein recht freudiges Thema.
Falls es sich auf nur CP1252, UTF-8 und UTF-16 Dateien beschränkt, ist es aber noch recht einfach. Bei UTF-16 gibt es halt Nullbytes und das schon beim ersten "<". UTF-8 hat strikte Regeln, die für alle Zeichen eingehalten werden müssen. ANSI ist dann der Rest. Um nicht selbst auf UTF-8 testen zu müssen, kannst du UTF8Decode verwenden, das gibt einen Leerstring zurück, wenn es irgendwo ein illegales Zeichen findet.
Also, ein paar Bytes einlesen, ist eine Null dabei, dann ist es UTF-16, gibt UTF8Decode für den gesamten Text mehr als einen Leerstring zurück, ist es UTF-8, sonst kann es bei der Auswahl nur ANSI sein.
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:42 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz