AGB  ·  Datenschutz  ·  Impressum  







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

Unterschied UTF8 / Unicode

Ein Thema von TheMiller · begonnen am 16. Jul 2011 · letzter Beitrag vom 16. Jul 2011
Antwort Antwort
Benutzerbild von TheMiller
TheMiller

Registriert seit: 19. Mai 2003
Ort: Gründau
2.480 Beiträge
 
Delphi XE7 Architect
 
#1

Unterschied UTF8 / Unicode

  Alt 16. Jul 2011, 14:10
Hallo,

ich bin auf Delphi 2009 umgestiegen und passe nun meine Projekte an. Dabei verstehe ich den Unterschied zwischen UTF-8 und Unicode nicht, was mich zu einem Problem führt. Also:

Das eine Projekt hat im Hintergrund eine Firebird-Datenbank. Mittels einer Boolean-Variable kann ich beim Connecten mit der DB-Klasse entscheiden, ob die Verbindung und Strings UTF-8 sein sollen. Meine gesamte Datenbank hat als Charset und Collate UTF8 eingestellt.

Verwende ich nun den Datentyp "String" im Projekt (was ja Unicode-String ist, oder?), bekomme ich die Meldung "Malformed String" von Firebird.

Dann habe ich mal testweise die Charset und Collate auf Unicode_CI gestellt, UTF8-Boolean-Schalter auf true gesetzt und nun kann ich Strings mit Umlauten eintragen.

Ich dachte aber bisher immer, dass UTF8 Unicode ist. War meine Vorgehensweise hier überhaupt richtig - oder nur Zufall?

Bitte um Hilfe und/oder Aufklärung

Danke!
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.874 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: Unterschied UTF8 / Unicode

  Alt 16. Jul 2011, 14:15
Unicode ist ein Überbegriff, UTF-8 eien konkrete Unicode-Implementierung/Codierung.
Delphi verwendet wie Windows aber UTF-16
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von TheMiller
TheMiller

Registriert seit: 19. Mai 2003
Ort: Gründau
2.480 Beiträge
 
Delphi XE7 Architect
 
#3

AW: Unterschied UTF8 / Unicode

  Alt 16. Jul 2011, 14:39
Ok. Das heißt, ich muss die Datenbank komplett auf "Unicode" umstellen und nicht auf UTF-8 stehen lassen. Alternative wäre, beim lesen/schreiben ein "utf8decode"/"utf8encode" zu verwenden, oder?
Hab ich das richtig verstanden?
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.874 Beiträge
 
Delphi 11 Alexandria
 
#4

AW: Unterschied UTF8 / Unicode

  Alt 16. Jul 2011, 14:43
Die Konvertierung sollte deine Zugriffsbibliothek erledigen. UTF-16 ist eine realtiv einfache Implemnetierung, hierbei werden anstatt der 8 Bit bei ASCII/Ansi 16Bit pro Zeichen verwendet. Bei UTF-8 ist die Anzahl variabel ( wichtige Zeichen 8, weniger wichtige 16 oder mehr Bit)
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von TheMiller
TheMiller

Registriert seit: 19. Mai 2003
Ort: Gründau
2.480 Beiträge
 
Delphi XE7 Architect
 
#5

AW: Unterschied UTF8 / Unicode

  Alt 16. Jul 2011, 14:50
Die Konvertierung sollte deine Zugriffsbibliothek erledigen.
Verstehe ich gerade nicht. Meine Zugriffsbibliothek ist meine Datenbankklasse mit den Methoden "Write","Read","Change","Delete" etc.

Nun habe ich in meinem Post vorgeschlagen, in diesen Methoden die Konvertierung mittels utf8encode einzubauen.

Was du mir geschrieben hast, bedeutet das ein "Ja, kannst du so machen", oder eher ein "Nein, das macht man ganz anders" Falls letzteres, dann habe ich deine Antwort nicht verstanden

Danke.
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.874 Beiträge
 
Delphi 11 Alexandria
 
#6

AW: Unterschied UTF8 / Unicode

  Alt 16. Jul 2011, 14:55
Du verwendest also direkz fbclient.dll-Funktionen?
Markus Kinzler
  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 12:28 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