AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Wie Zugriff auf files und ordnern, die ASCII im Namen haben?
Thema durchsuchen
Ansicht
Themen-Optionen

Wie Zugriff auf files und ordnern, die ASCII im Namen haben?

Ein Thema von Kyro · begonnen am 16. Aug 2005 · letzter Beitrag vom 28. Aug 2005
 
Olli
(Gast)

n/a Beiträge
 
#16

Re: Wie Zugriff auf files und ordnern, die ASCII im Namen ha

  Alt 17. Aug 2005, 11:38
Bitte auch den folgenden Beitrag beachten: http://www.delphipraxis.net/internal...=415625#415625

Zitat von Kyro:
dieses "Alt+219" Zeichen, welchen wert hätte dieses als widechar(?)
Bleibt sich gleich, sollte mit 219 funktionieren, alsoWideChar(219) wenn es denn ein Dezimalwert war. Allerdings kannst du bei den Zeichen unter Wert 256 auch durchaus noch die Syntax mit #255 (oder #$FF) benutzen (zu dem Thema weiterlesen ...).

Also paß' auf, welche Zahlen du castest, ist egal, solange du bei 16bittigen Zahlen bleibst (0..$FFFF), wobei natürlich nicht alle gültige Unicodezeichen sind. Was du wissen mußt, ist daß Windows nach außen nur 2bytige (also 16bittige) Unicodezeichen unterstützt - irgendjemand hier im Forum meinte letztens, daß es ab mind. XP sogar intern Unterstützung für 32bittige Unicodezeichen gibt - konnte ich aber noch nirgends verifizieren, die Native APIs arbeiten noch immer mit 16bittigen Zeichen (außer vielleicht in Win64?!?).

Weiterhin mußt du dir klarmachen, daß die unteren 256 Zeichen im Unicodezeichensatz ja eine 0 im oberen Byte haben, also z.B. hexadezimal $00FF (sie passen also in 1 Byte ohne daß Bits verlorengehen) - dadurch und durch die Tatsache, daß diese ersten 256 Zeichen exakt in den ANSI-Zeichen entsprechen, gibt es bei diesen Zeichen eine Kompatibilität. Hast du also Zeichen wie 'a'..'z', so sind diese eindeutig innerhalb dieses Bereiches und können im Codeeditor normal (als literale Strings) eingetippt werden (der Compiler macht in der EXE literale WideStrings daraus). Alle Zeichenketten aus Ordinalwerten über 255 ($FF) müssen in den mir bekannten Delphiversionen extra durch Aneinanderkettung von WideChar-Casts erzeugt werden. Wenn Delphis Codeeditor Unicode unterstützen würde (vielleicht tun dies neuere Versionen ja doch schon?), dann könntest du diese Zeichen direkt eingeben. Wenn du den Dateinamen allerdings nicht hardcoden mußt, gibt's ja noch die entsprechenden Unicode-APIs zu den ANSI-APIs, welche dir eben ermöglichen direkt die Namen im Unicodeformat zu erhalten.
Unicode wird "a bisserl" unter Win9x unterstützt, allerdings mehr schlecht als recht: MSDN-Library durchsuchenMSLU.

@runger: Das freut doch, wenn es noch anderen außer dem Fragesteller etwas bringt

[edit=Admin]Auf Wunsch von Oliver den Link am Anfang dieses Beitrages eingefügt. Mfg, Daniel[/edit]
  Mit Zitat antworten Zitat
 


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 18: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