![]() |
AW: Einlesen von KAPUTTER Unicode-Datei
Zitat:
|
AW: Einlesen von KAPUTTER Unicode-Datei
Zitat:
|
AW: Einlesen von KAPUTTER Unicode-Datei
Ich bin mir gar nicht mehr sicher, ob es sich wirklich um eine UTF-16 codierte Datei handelt. Im TStreamReader.Create wird zwar ein TEncoding.Unicode übergeben, aber für das DetectBOM wiederum ein True. Damit wird das Unicode-Encoding lediglich zum Fallback, wenn kein BOM gefunden wird.
|
AW: Einlesen von KAPUTTER Unicode-Datei
Zitat:
Zitat:
|
AW: Einlesen von KAPUTTER Unicode-Datei
Hallo,
Zitat:
|
AW: Einlesen von KAPUTTER Unicode-Datei
Das Problem ist, ich weiß ja nicht welche Zeichen kaputt sind. Bei dieser Datei schon, aber es könnte auch eine beliebig andere kaputte Datei geladen werden. Dort liegen wieder andere Kodierfehler vor. Also einfach Suchen und Ersetzen ist nicht.
Aber wenn ich so in die Quellen von TEncoding schaue dann wird für solche Zeichen tatsächlich nichts anderes gemacht als ein RAISE und fertig. Um das zu ändern müsste ich wohl ein komplett eigenes TEncoding schreiben, weil die Methode TEncoding.GetString (wo das RAISE passiert) nicht virtuell ist. Ich glaub da stehen Aufwand und Nutzen in keinem Verhältnis. EDIT: Zitat:
|
AW: Einlesen von KAPUTTER Unicode-Datei
Zitat:
Delphi-Quellcode:
und GetChars macht ein simples Move.
ByteCount div SizeOf(Char)
Was sagt denn der Debugger dazu? |
AW: Einlesen von KAPUTTER Unicode-Datei
Dieser Thread hat keinen Sinn mehr ohne dass du hier einen Screenshot aus einem Hex-Editor (HxD z.B., guck mal auf delphipraxis.net) postest. Da reichen auch die ersten zehn Bytes. Damit ist der Thread sofort, eindeutig und vollumfassend erledigt. Ich bin mir, wie ich bereits im ersten Post geschrieben habe, ziemlich sicher, dass das Problem vor dem PC sitzt und nicht weiß, was für ein Encoding die Datei hat. Eine Datei kann wie erwähnt technisch gesehen unmöglich gleichzeitig eine dreiteilige ANSI-Sequenz und UTF-16-Codepoints enthalten, ohne dass ziemlich genau die Hälfte der Datei aus überwiegend CJK-Zeichen bestände.
Zitat:
|
AW: Einlesen von KAPUTTER Unicode-Datei
Was meinst du mit "dreiteilige ANSI-Sequenz"? Und was meint ihr mit "Sonderzeichen"? Der Begriff kommt wenn ich danach Google bei Unicode nicht vor. Auch bei den Kategorien nicht (
![]() |
AW: Einlesen von KAPUTTER Unicode-Datei
Ich würde es etwas anders formulieren, aber Redeemer hat recht. Ohne einen Hexdump ist das alles nur Spökenkiekerei. Jede Datei enthält binäre Daten. Wenn Ihre Anzeige einen sinnvollen Text ergibt, dann stimmt die Interpretation (zufällig?).
Gruß K-H |
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:46 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