PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Probleme mit Dateiendungen (Qt)



Kirsche
05-12-2005, 17:34
Hallo Leute,

ich habe ein seltsames Problem mit Dateiendungen (unter Windows 98). Ich lese Dateinamen aus einem Ordner auf der Festplatte ein und stelle sie in einer QItemViewList dar. Manche Dateien enden mit Großbuchstaben (z.B. *.TXT) und manche mit Kleinbuchstaben (z.B. *.txt). Im Ordner enden sie aber alle mit Kleinbuchstaben ( z.B. *.txt). Wie kommt das? In meinem Programm wird beim Öffnen von Dateien immer überprüft, wie sie heißen, damit sie nicht noch einmal geöffnet werden. Nun werden zwei Dateien mit solchen Endungen als verschiedene betrachtet und zweimal geöffnet. Wie schaffe ich es, dass Dateien so angezeigt werden, wie sie tatsächlich enden?

Schöne Grüße,

Christian81
05-12-2005, 18:03
Deine Ordneransicht lügt - deshalb die Probleme.
Wandle doch deine Dateinamen einfach alle in Klenibuchstaben um - QString::lower() bzw. QString::toLower() (Qt4).

Kirsche
05-12-2005, 18:11
Hallo Christian,

ich glaube, das darf ich nicht. Die Dateinamen sollten so bleiben, wie sie sind. Ich kann also nur die Endungen ändern, und das ist vermutlich etwas umständlich. Naja, vielleicht geht es ja mit QFileInfo. Mal sehen...

Manche Dateien werden sogar im Ordner mit *.TXT dargestellt. Die erscheinen dann natürlich auch groß, aber wie kommt es, dass andere Dateien im Ordner auf *.txt enden und trotzdem mit *.TXT erscheinen? Das ist dann doch reine Willkür, oder?

Schöne Grüße,

anda_skoa
05-12-2005, 19:50
Sieh mal nach, wie sie in der Windows Konsole angezeigt werden.

Im Explorer wird dir tatsächliche Schreibweise nicht angezeigt, sondern vereinheitlicht.

Ciao,
_

Kirsche
05-12-2005, 19:58
Hallo anda_skoa,

in der Konsole wird alles großgeschrieben, aber das gilt für alle Dateien (auch in anderen Ordnern).

Das Problem ist, dass es eben nicht einheitlich ist. Manche Dateien werden im Ordner kleingeschrieben, manche groß. Beides wird im Ordner angezeigt. Beim Anzeigen in meinem Programm wird aus klein manchmal groß.
Beim unterschiedlichen Importieren in mein Programm passiert das das erste Mal. Allerdings müsste beim nächsten Einlesen alles so sein, wie es im Ordner liegt, da mein Programm sich nicht merken kann, wie ursprünglich mal die Daten importiert wurden. Beim nächsten Start werden ja alle Dateien gleich behandelt. :confused:

Schöne Grüße,

anda_skoa
05-12-2005, 21:07
Versteh ich das richtig, daß bei zweimal einlesen, zwei unterscheidliche Groß/Kleinschreibweisen rauskommen?

Ciao,
_

Kirsche
06-12-2005, 10:32
Hallo anda_skoa,

nein, da habe ich mich wohl falsch ausgedrückt.

Etwas ausführlicher:

Ich kann zwei Dateien gleichzeitig importieren (wenn ich den einen Typ auswähle, wird der andere, der dazugehört, mit importiert) oder ich importiere nur den zweiten Typ alleine. Im ersten Fall ist die Endung des zweiten Typs großgeschrieben, im zweiten Fall klein, obwohl alle diese Endungen im Ordner kleingeschrieben werden. Wenn ich das nächste Mal mein Programm starte, werden alle Dateien aus dem Unterordner geladen. Trotzdem erscheinen die Endungen genau wie zuvor, obwohl mein Programm nicht mehr wissen kann, wie vorher importiert wurde. Selbst wenn ich die Datei-Endungen umbenenne (also definitiv kleinschreibe), werden einige trotzdem großgeschrieben.

Schöne Grüße,