AGB  ·  Datenschutz  ·  Impressum  







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

Erkennen von Unicode ???

Ein Thema von Kedariodakon · begonnen am 18. Feb 2005 · letzter Beitrag vom 18. Feb 2005
Antwort Antwort
Benutzerbild von Kedariodakon
Kedariodakon

Registriert seit: 10. Sep 2004
Ort: Mönchengladbach
833 Beiträge
 
Delphi 7 Enterprise
 
#1

Erkennen von Unicode ???

  Alt 18. Feb 2005, 08:37
Wenn ich einen Speicherbereich habe, in welchem sich ein String befindet, entweder als Unicode oder normal, kann ich das irgendwie erkennen?


Bye
Christian
  Mit Zitat antworten Zitat
Benutzerbild von Sanchez
Sanchez

Registriert seit: 24. Apr 2003
Ort: Neumarkt Stmk
892 Beiträge
 
Delphi XE6 Enterprise
 
#2

Re: Erkennen von Unicode ???

  Alt 18. Feb 2005, 08:42
Ja,
Mit unserem Schriftsatz hat bei einem Unicode-String jedes zweite Byte den Wert 0.
Daniel
Testen ist feige!
  Mit Zitat antworten Zitat
Benutzerbild von Kedariodakon
Kedariodakon

Registriert seit: 10. Sep 2004
Ort: Mönchengladbach
833 Beiträge
 
Delphi 7 Enterprise
 
#3

Re: Erkennen von Unicode ???

  Alt 18. Feb 2005, 08:55
Zitat von Sanchez:
Ja,
Mit unserem Schriftsatz hat bei einem Unicode-String jedes zweite Byte den Wert 0.
Und wenn es ein Russischer, Türkischer, Japanischer oder Chinesischer ist?
Meinte die Frage auf generelle Unicode-Schriftsätze.

Bye
Christian
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

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

Re: Erkennen von Unicode ???

  Alt 18. Feb 2005, 08:55
Zitat von Kedariodakon:
Wenn ich einen Speicherbereich habe, in welchem sich ein String befindet, entweder als Unicode oder normal, kann ich das irgendwie erkennen?
Eine Ansi-String wird mit einem 1-Byte langen $00 abgeschlossen, ein WideString mit $0000.

Zitat von Sanchez:
Ja,
Mit unserem Schriftsatz hat bei einem Unicode-String jedes zweite Byte den Wert 0.
Das stimmt nur wenn der String Zeichen aus dem Bereich "Basic Latin" und "Latin-1 Supplement" beinhaltet.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Benutzerbild von Kedariodakon
Kedariodakon

Registriert seit: 10. Sep 2004
Ort: Mönchengladbach
833 Beiträge
 
Delphi 7 Enterprise
 
#5

Re: Erkennen von Unicode ???

  Alt 18. Feb 2005, 08:57
Zitat von Bernhard Geyer:
Eine Ansi-String wird mit einem 1-Byte langen $00 abgeschlossen, ein WideString mit $0000.
Ok das ist schon mal was, nur weiß ich nicht ob ich immer so ein Abschlusszeichen mitbekomm
Wenn ich dieses Word nicht hab, kann mans auch nicht erkennen korrekt?

Bye
Christian
  Mit Zitat antworten Zitat
Benutzerbild von SubData
SubData

Registriert seit: 14. Sep 2004
Ort: Stuhr
1.078 Beiträge
 
Delphi 11 Alexandria
 
#6

Re: Erkennen von Unicode ???

  Alt 18. Feb 2005, 09:02
Das Ding musst du haben sonst ist es kein gültiger String...
Ronny
/(bb|[^b]{2})/
  Mit Zitat antworten Zitat
Muetze1
(Gast)

n/a Beiträge
 
#7

Re: Erkennen von Unicode ???

  Alt 18. Feb 2005, 11:04
Moin!

Wieso fragt ihr nich einfach Windows? IsTextUnicode

MfG
Muetze1
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

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

Re: Erkennen von Unicode ???

  Alt 18. Feb 2005, 11:29
Zitat von Bernhard Geyer:
Eine Ansi-String wird mit einem 1-Byte langen $0 abgeschlossen, ein WideString mit $0000.
Nicht immer, es gibt Sonderfälle, wo selbst Ansistrings (UCS1)
mit zwei #0 geschlossen werden (wenn ich dann mal meine Utilities vorstelle, werdet ihr das merken, weil ich auch Sonderfälle unterstütze )

Das Beste ist wohl Windows zu fragen (wie schon erwähnt)


PS: im Speicher muß nicht jeder String, egal ob Ansi, Wide oder Long mit #0 geschlossen werden. (z.B. wenn der String 'ne Längenangabe beinhaltet und daher keinen derartigen Abschluß benötigt)

Aber wenn du Glück hast, dann wird der Widestring mit #FEFF eingeführt, was ich im Speicher aber nicht vermute (dieses ist aber die Kenzeichnung für Unicode[2]-Textdateien)
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: Erkennen von Unicode ???

  Alt 18. Feb 2005, 11:37
Zitat von himitsu:
Nicht immer, es gibt Sonderfälle, wo selbst Ansistrings (UCS1) mit zwei #0 geschlossen werden (wenn ich dann mal meine Utilities vorstelle, werdet ihr das merken, weil ich auch Sonderfälle unterstütze )
Kannte ich noch nicht[/quote]

Zitat von himitsu:
Das Beste ist wohl Windows zu fragen (wie schon erwähnt)
Und hoffen das es auf jeder Windows-Version gleich läuft

Zitat von himitsu:
PS: im Speicher muß nicht jeder String, egal ob Ansi, Wide oder Long mit #0 geschlossen werden. (z.B. wenn der String 'ne Längenangabe beinhaltet und daher keinen derartigen Abschluß benötigt)
Aber wenn er in Richtung Win32-API verwendet werden soll schon. PWideChars benötigen diesen Abschluss. Und ohne kracht es.

Zitat von himitsu:
Aber wenn du Glück hast, dann wird der Widestring mit #FEFF eingeführt, was ich im Speicher aber nicht vermute (dieses ist aber die Kenzeichnung für Unicode[2]-Textdateien)
Glaube ich nicht #FEFF ist nur die Kennzeichnung der Byte-Order in der Textdatei (Stichwort: Big/Little-Endian)
Windows Vista - Eine neue Erfahrung in Fehlern.
  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:42 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