AGB  ·  Datenschutz  ·  Impressum  







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

widestring

Ein Thema von sancho1980 · begonnen am 26. Apr 2006 · letzter Beitrag vom 29. Apr 2006
Antwort Antwort
Seite 1 von 2  1 2      
sancho1980

Registriert seit: 7. Feb 2006
429 Beiträge
 
#1

widestring

  Alt 26. Apr 2006, 17:58
Hallo,
sagt mal, wie muss ich mir eigentlich den WideString-Typ vorstellen? Das ist doch Unicode, oder? Wieviele Bytes werden da pro Zeichen verwendet? Habe neulich gelesen, dass es auch bei Unicode nochmal Unterscheidungen zwischen den einzelnen Formaten gibt. Welches wird denn da bei WideString verwendet? Weiß das einer?
Danke,
Martin
Um Rekursion zu verstehen, muss man zunächst Rekursion verstehen.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

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

Re: widestring

  Alt 26. Apr 2006, 18:56
der WideString ist im UCS2-Format, also 2 Byte pro Zeichen.

Allerdings ist der nicht wie der AnsiString ein "Delphi-eigenes Format", sonder wird über einen OLE-String gehandhabt, was auch erklärt warum die WideStrings keine Referenzzählung besitzen

Für's neuere UCS4 gibt es in Delphi leider auch noch keine Möglichkeiten -.-''
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.171 Beiträge
 
Delphi 10.4 Sydney
 
#3

Re: widestring

  Alt 26. Apr 2006, 19:51
Zitat von himitsu:
der WideString ist im UCS2-Format, also 2 Byte pro Zeichen.
Erst ab W2K. NT kennt UCS2 nicht.

Zitat von himitsu:
Für's neuere UCS4 gibt es in Delphi leider auch noch keine Möglichkeiten -.-''
AFAIk auch keine Win-API-Funktionen um es auf den Bildschirm zu bekommen.

Zitat von sancho1980:
Habe neulich gelesen, dass es auch bei Unicode nochmal Unterscheidungen zwischen den einzelnen Formaten gibt.
Vermutlich meinst Du die Speicherformate wie z.B. UTF8.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
sancho1980

Registriert seit: 7. Feb 2006
429 Beiträge
 
#4

Re: widestring

  Alt 26. Apr 2006, 22:09
hmmm
von ole hab ich auch schon mal was gehört; aber was es damit auf hat war mir bisher immer ein rätsel
würd's dir was ausmachen, mir noch zu erklären, was du mit der referenzzählung meinst?

Zitat:
Vermutlich meinst Du die Speicherformate wie z.B. UTF8
Ja, genau.
Ist UCS2 auch so ein Speicherformat oder is das wieder was anderes?
Um Rekursion zu verstehen, muss man zunächst Rekursion verstehen.
  Mit Zitat antworten Zitat
Hawkeye219

Registriert seit: 18. Feb 2006
Ort: Stolberg
2.227 Beiträge
 
Delphi 2010 Professional
 
#5

Re: widestring

  Alt 26. Apr 2006, 22:17
Hallo,

hier ist ein Link zum Thema Referenzzählung bei Ansistrings.

Gruß Hawkeye
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

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

Re: widestring

  Alt 27. Apr 2006, 13:12
Stimmt nicht ganz, es gibt inzwischen Möglichkeiten die UCS4-Zeichen darzustellen, nur hab ich bisher selber noch nicht rausfinden konnte wie das möglich ist, aber dafür daß es geht gibt es Beweise ... das Program CharMap z.B.

Erst ab W2K. NT kennt UCS2 nicht. tja und darum funktioniert meine Unicodversion vom Opendialog nicht in den alten WindowsVersionen, diese haben zwar schon die API-Funktionen drin, aber leider sind diese total lehr, so daß es nichtmal ein Fehler gibt, wenn man diese aufruft, es passiert halt einfach nur nichts


Der OLE-String wird von der OLE32.dll verwaltet ... delphi leitet einfach alle nötigen Aufrufe an diese DLL weiter ... es verwaltet den String halt nicht selber, so wie es z.B. beim AnsiString der Fall ist.



UCS2 ist einfach nur ein nur ein UniCodeString mit 2 Bytes pro Zeichen, halt von den Daten her das selbe, wie es im WideString vorkommt

Beim UTF8 kann man alle Zeichen codieren, wobei ein Zeichen keine feste Länge hat, wärend ANSI/ASCII/UCS1/UCS2/UCS4 eine feste Länge haben (beim ANSI gibts aber auch ausnahmen, da dieses eigentlich auch ein Multibytezeichensatz ist, aber ich kenne noch keine Sprache/Codetabelle, wo dieses auch genutzt wird)
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.171 Beiträge
 
Delphi 10.4 Sydney
 
#7

Re: widestring

  Alt 27. Apr 2006, 19:39
Zitat von himitsu:
... da dieses eigentlich auch ein Multibytezeichensatz ist, aber ich kenne noch keine Sprache/Codetabelle, wo dieses auch genutzt wird)
AFAIK arbeiten die Japanischen/chinesichen Windows-Versionen im "Nicht-Unicode-Modus" so.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

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

Re: widestring

  Alt 28. Apr 2006, 11:04
Zitat von Bernhard Geyer:
AFAIK arbeiten die Japanischen/chinesichen Windows-Versionen im "Nicht-Unicode-Modus" so.
dann möchte ich aber viele "Delphi"-Programme in diesen Windowsversionen nicht testen, denn leider sind zuviele Codes nicht MultiByte-fähig, vorallem wenn diese Zeichenketten Charweise verarbeiten ._.
(ich geb zu meine codes sind das auch nicht alle, aber ich versuche das Stück für Stück zu beheben)
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.171 Beiträge
 
Delphi 10.4 Sydney
 
#9

Re: widestring

  Alt 28. Apr 2006, 21:02
Zitat von himitsu:
Zitat von Bernhard Geyer:
AFAIK arbeiten die Japanischen/chinesichen Windows-Versionen im "Nicht-Unicode-Modus" so.
dann möchte ich aber viele "Delphi"-Programme in diesen Windowsversionen nicht testen, denn leider sind zuviele Codes nicht MultiByte-fähig, vorallem wenn diese Zeichenketten Charweise verarbeiten ._.
Kann sein das viele Nicht-Unicode-Anwendungen (wird nicht nur Delphi-Anwendungen betreffen) probleme mit solchen Sprachen haben.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

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

Re: widestring

  Alt 29. Apr 2006, 09:22
Das ist jetzt auch ein Grund, warum ich seit 'ner Weile versuche von ANSI Abstand zu nehmen, also entweder richtig Unicode (UCS2) zu verwenden und wenn schon 1-Byte, dann ASCII, oder ähnliches, aber halt nichts MultiByte-mäßiges ... dann hat man da zumindestens keine Probleme in dieser Richtung mehr ^^ (nur schade daß Delphi standardmäßig ANSI will -.-'')
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 20:39 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