Seite 1 von 1

Datei öffnen

Verfasst: Donnerstag 19. August 2010, 12:07
von powered_by_coffee
Wie man ansich eine Datei zum Schreiben oder Auslesen "öffnet" (open(), write() etc..), ist mir klar.
Aber ich möchte nun, dass sich die Datei auch in dem jeweiligen Programm öffnet.
Wenn ich z.B. in eine .txt Datei schreibe, soll sie sich anschließend auch im Editor öffnen.
Ist das einfach so möglich?

Mfg

Re: Datei öffnen

Verfasst: Donnerstag 19. August 2010, 12:33
von EyDu
Hallo.

Du suchst wohl os.startfile.

Re: Datei öffnen

Verfasst: Donnerstag 19. August 2010, 12:37
von cofi
Generell: Nein, da es nicht das "jeweilige Programm" gibt.

Fuer Windows gibt es `os.startfile`.
Fuer KDE/Gnome/... koennte man sich mit MIME behelfen, die Assoziationen sind IIRC in irgendeinem Freedesktop-Standard geregelt.

Re: Datei öffnen

Verfasst: Donnerstag 19. August 2010, 12:45
von Rebecca
Unter Linux ware da auch noch $EDITOR... Wenn es um Text-basierte Dateien geht.

Re: Datei öffnen

Verfasst: Donnerstag 19. August 2010, 13:08
von BlackJack
Unter Linux könnte man auf `xdg-open` zurückgreifen. Das gehört AFAIK zum Freedesktop-Standard.

Re: Datei öffnen

Verfasst: Donnerstag 19. August 2010, 14:19
von powered_by_coffee
Also es geht um ein kleines Web-Script. Das generiert ein bestimmten Inhalt. Diesen soll man denn als .txt Datei downloaden können.

Ich möchte den Inhalt nicht in eine bestehende Datei schreiben sondern quasi für den User eine .txt generieren, die er dann abspeichern kann.
In PHP geht sowas aber in Python weiß ich leider nicht so richtig.

Re: Datei öffnen

Verfasst: Donnerstag 19. August 2010, 15:08
von gkuhl
Wie schaut denn dein Web-Skript aus? Wie es z.B. mit Bottle geht, wird hier beschrieben.

Grüße
Gerrit

Re: Datei öffnen

Verfasst: Donnerstag 19. August 2010, 18:37
von DaMutz
in PHP geht es doch indem du einen Header mitschickst. In Python wird das sicher auch so gehen.

Re: Datei öffnen

Verfasst: Samstag 21. August 2010, 15:50
von vorstadtprolo
oder du öffnest die Datei so wie unten angegeben: Damit wird eine Textdatei namens "aha.txt" im Windows-Ordner "Downloads" über den Editor geöffnet. War das für dich hilfreich?

Code: Alles auswählen

import os
os.popen("cd C:\\Downloads")
os.popen("C:\\Downloads\\aha.txt")

Re: Datei öffnen

Verfasst: Samstag 21. August 2010, 16:20
von cofi
Leider hab ich kein Windows da, um das nachzupruefen, aber ich kann mir nicht vorstellen, dass das funktioniert. `os.popen` arbeitet mit ausfuehrbaren Programmen, nicht mit "normalen" Dateien.

Noch dazu geht es total an den Beduerfnissen des OP vorbei ..

Re: Datei öffnen

Verfasst: Samstag 21. August 2010, 16:47
von BlackJack
Der erste Aufruf dürfte auch Unsinn sein, weil auch unter Windows das Arbeitsverzeichnis pro Prozess gilt und das ``cd`` einfach nur das Arbeitsverzeichnis des Kindprozesses ändert und dieser Kindprozess danach beendet wird. Ziemlich sinnfreie Aktion.