[Python-de] Re: Re: os.startfile()

Diez B. Roggisch deets at web.de
Don Aug 12 13:00:33 CEST 2004


Hallo,

> Heisst das, dass das in Griechenland wohl funktioniert, da dort auf den
> meisten PCs die entsprechende Codepage eingestellt ist? (Das würde mein
> Problem teilweise lösen: wer verwendet schon auf einem deutschen PC
> griechische Filenamen...)
> Noch (viel) besser wäre natürlich, wenn os.startfile() einfach Unicode
> könnte.

os.startfile kann genau das, was das OS kann - wenn Windows kein utf8 bei 
Dateinamen zulaesst bzw. nicht entsprechend konfiguriert ist, dann kann 
python da nix dran drehen.... Angeblich benutzt ntfs utf8 - Martin kann da 
bestimmt was zu sagen.

> Gibt's denn vielleicht eine Alternative, um Files mit dem passenden
> Programm zu öffnen, ohne dass man weiss, um was für ein File es geht
> und welche Software beim User installiert ist? Vielleicht sogar was
> Platform-unabhängiges? (Denn os.startfile() ist ja wohl leider Windows-
> only...)

Ne. Nur windows hat die komische Angewohnheit, nichtssagende 3 Buchstaben am 
Ende einer Datei dazu heranzuziehen, den Typ der Datei zu bestimmen. Dafuer 
hat es dann aber auch eine Datenbank (Registry) fuer die dafuer registrierten 
Programme - und die nutzt os.startfile

Unter mac os gibts dafuer AFAIK meta-daten im resourcezweig - schonmal viel 
besser. Wahrscheinlich gibts da auch eine entsprechende Datenbank.

Unter unix kannst du mit "file" den mimetype einer Datei ermitteln. Da stellt 
sich dann aber das Problem der assoziation von Dateiname und Programm - kde 
und gnome haben da was fuer, aber das ist dann eben auch proprietaer.

Diez