Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Sonderzeichen im Dateinamen verschwinden (https://www.delphipraxis.net/117974-sonderzeichen-im-dateinamen-verschwinden.html)

p80286 29. Jul 2008 11:40


Sonderzeichen im Dateinamen verschwinden
 
Hallo zusammen,

Mir ist aufgefallen, daß TOpenDialog.FileName nicht mit Sonderzeichen(z.B. ş) umgehen kann. Das gilt sowohl für D7, als auch für Turbo Delphi 2006. Ja ich hab es auch mit widestring versucht. Kennt Ihr eine Möglichkeit, Topendialog sonderzeichentauglich zu machen? Ach ja, die Anzeige ist übrigens ganz korrekt.

Grüße
K-H

new32 29. Jul 2008 14:27

Re: Sonderzeichen im Dateinamen verschwinden
 
versuchs mal mit der UNICODE-Version von GetOpenFileName aus comdlg32.dll
Die sollte alle Sonderzeichen schlucken.

Bernhard Geyer 29. Jul 2008 14:27

Re: Sonderzeichen im Dateinamen verschwinden
 
Dein Freund sind TNTWare-Control oder Delphi 2009.

himitsu 31. Jul 2008 23:41

Re: Sonderzeichen im Dateinamen verschwinden
 
Zitat:

Mir ist aufgefallen, daß TOpenDialog.FileName nicht mit Sonderzeichen(z.B. ş) umgehen kann.
...
Ja ich hab es auch mit widestring versucht
nur mal so als Tipp: ist dir auch aufgefallen was .FileName für einen Typ hat? :zwinker:

p80286 4. Aug 2008 13:31

Re: Sonderzeichen im Dateinamen verschwinden
 
Hallo zusammen,

vielen Dank für die Denkanregung.
Vor allem für den Typen von Tfilename habe ich doch recht lange gebraucht.

Ich denke ich verzichte auf die Unicodefähigkeit, da augenscheinlich Unicode bei Borland / Codegear /oderwieauchimmerdieheuteheißen nicht so die Priorität genossen hat.
Da wurde nicht nur eine Funktion vergessen.
Solange ich keine "ausgefallenen" Sprachen bedienen muß beschränke ich mich halt auf das gute alte 7-Bit-ASCII.

Grüße
K-H

P.S.
Falls jemand ein Beispiel für GetOpenFileNameW sucht:
delphi für Japaner

himitsu 4. Aug 2008 14:12

Re: Sonderzeichen im Dateinamen verschwinden
 
falls hemand bei uns 'nen Unicode-Opendialog sucht ... siehe alte Quellcodes meines Hier im Forum suchenFileSplitters

PS: 8-Bit-ANSI bediehnt der TOpenDialog auch schon,
also mit der passenden Codepage geht eigentlich recht viel :angel:

Bernhard Geyer 4. Aug 2008 14:18

Re: Sonderzeichen im Dateinamen verschwinden
 
Zitat:

Zitat von p80286
Solange ich keine "ausgefallenen" Sprachen bedienen muß beschränke ich mich halt auf das gute alte 7-Bit-ASCII.

Bei 7-Bit-ASCII wird hier nur Englisch übrig bleiben, denn z.B. die deutschen Sondernzeichen würden hier auch nicht gehen. :mrgreen:

p80286 4. Aug 2008 15:25

Re: Sonderzeichen im Dateinamen verschwinden
 
Hallo zusammen,

da habt Ihr nicht unrecht, mit der richtigen Codepage und 8Bit-Ascii.....
Mir geht es darum, daß nicht die Schweden sich an deutschen Umlauten die Zähne ausbeißen, und den Dänen französischeie Dateinamen auf einmal spanisch vorkommen. Auslöser für meine Frage war eine türkische .RTF-Datei, die sich zickig verhalten hatte und von einem RTF-Tool nicht gelesen werden konnte. word hat die Datei zwar erkannt, konnte aber mit den Inhalten nichts anfangen (da fehlten unterwegs zwei }} ).
Ich kann mir bei solchen Problemen ganz gut behelfen, nur wenn Kollegen Dateinamen sehen, die nicht von allen Programmen problemlos verarbeitbar sind, dann will ich wenigstens da, wo ich Einfluß auf die Namensgebung habe, auf der sicheren Seite sein. Das ist zwar wirklich der kleinste gemeinsame Nenner, aber der wird wenigstens überall erkannt.

Grüße
K-H

himitsu 6. Aug 2008 18:21

Re: Sonderzeichen im Dateinamen verschwinden
 
alternaiv kannst du versuchen den Dialog so umzubauen, daß er mit den 8.3-Dateinamen arbeitet, wenn er ihm unbekannte Zeichen vorfindet.


Alle Zeitangaben in WEZ +1. Es ist jetzt 08:14 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