AGB  ·  Datenschutz  ·  Impressum  







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

UTF8 in TMEMO laden

Ein Thema von wschrabi · begonnen am 3. Mär 2016 · letzter Beitrag vom 3. Mär 2016
Antwort Antwort
wschrabi

Registriert seit: 16. Jan 2005
448 Beiträge
 
#1

UTF8 in TMEMO laden

  Alt 3. Mär 2016, 09:04
Datenbank: MySql • Version: 5 • Zugriff über: MyDAC
Hallo
ich habe eine UTF8 Text Datei die ich gern in ein Memo laden will mit:
   MemoRis.Lines.LoadFromFile(MyRISAll,Tencoding.UTF8); doch bekomme ich den Error:

EEncodingError: "Keine Zuordnung für Unicode-Zeichen in der Multibyte-Zielcodeseite vorhanden"

Doch in einen UTF8 komp. Editor (SLickEdit) kann ich es ohne Probleme laden.
ALs FOnt des TMemos habe ich Arial Unicode MS und als Charset DEFAULT_CHARSET definiert.
Wer weiß Rat?

PS: Habe das hier gefunden: http://www.delphipraxis.net/1259015-post22.html doch kommt der Err auch ohne IDE.
Habe Delphi XE6

DANKE
Walter

Geändert von wschrabi ( 3. Mär 2016 um 09:11 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.201 Beiträge
 
Delphi 10.4 Sydney
 
#2

AW: UTF8 in TMEMO laden

  Alt 3. Mär 2016, 09:25
Ich tippe darauf das die Datei nicht fehlerfrei Codiert ist oder Probleme mit dem BOM der Datei gibt.
Das es ein anderer (der Codierungsfehler überliest) lesen kann sagt nicht aus das die Datei OK ist.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
wschrabi

Registriert seit: 16. Jan 2005
448 Beiträge
 
#3

AW: UTF8 in TMEMO laden

  Alt 3. Mär 2016, 09:54
in SlickEdit kann ist die Datei ok. Ich habe sie frisch aus dem Internet gesaugt. Als utf8.
Naja egal, da ich in dem TMEMO nur eine Search/Replace routine mache, habe ich es als DEFAULT Encoding
geladen, das geht. und ich save sie wieder mit default encoding raus.

Danke jedoch für den Tipp.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#4

AW: UTF8 in TMEMO laden

  Alt 3. Mär 2016, 10:38
Ist ein BOM vorhanden, wird das Encoding ignoriert und naütrlich das BOM verwendet.
Beim Laden gibt man das "Default"-Encoding an, wenn die Datei keine Kennung enthält.

Zitat:
Ich tippe darauf das die Datei nicht fehlerfrei Codiert ist oder Probleme mit dem BOM der Datei gibt.
Bzw. es ist ein URF-8.

Der Fehler gibt an, daß "ungültige" Zeichen gefunden wurden, welche nicht zur gewählten CodePage gehören.
$2B or not $2B
  Mit Zitat antworten Zitat
wschrabi

Registriert seit: 16. Jan 2005
448 Beiträge
 
#5

AW: UTF8 in TMEMO laden

  Alt 3. Mär 2016, 10:49
Danke,
ich denke es sind einige mathematische Zeichen drin, aber wieso kann das Slickedit, und MEMO nicht?
Slickedit hat ja auch die gleiche Codepage.
mfg
ws
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#6

AW: UTF8 in TMEMO laden

  Alt 3. Mär 2016, 11:10
Es gibt mehrere Wege, um mit Problemen umzugehen:
  • man wirft einen Fehler, wenn etwas nicht stimmt (LoadFromFile / TEncoding)
  • man macht einfach wortlos garnichts (Delphi-Referenz durchsuchenUtf8Decode Delphi-Referenz durchsuchenUTF8ToString) und gibt einen leeren Text zurück
  • man ignoriert nur die ungültigen Zeichen, bzw. wandelt sie um. (TypeCast von UnicodeString zu AnsiString/UTF8String)
    Offiziell gibt es im Unicode ein Eratzzeichen dafür, aber viele verwenden das "?"
  • man probierte andere Encodings, bis man Eines hat, was keinen Fehler wirft
  • man wendet eine Textanalyse an und versucht die CodePage zu "erraten"
    Hier im Forum suchenencoding ermitteln / Hier im Forum suchencodepage ermitteln

Slickedit macht jedenfalls nicht Punkt 1 oder 2.
$2B or not $2B

Geändert von himitsu ( 3. Mär 2016 um 11:12 Uhr)
  Mit Zitat antworten Zitat
Antwort Antwort


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 03:09 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz