7 Stimmen

Fehler: Datei oder Verzeichnis nicht gefunden

Ich erhalte folgende Fehlermeldung:

Traceback (most recent call last):
  File "E:\stuff\module.py", line 91, in <module>
    f = open('E:/stuff/log.txt')
IOError: [Errno 2] No such file or directory: 'E:/stuff/log.txt'

Und das ist mein Code:

f = open('E:/stuff/log.txt')

En E:/stuff/log.txt Datei existiert. Ich kann im Windows Explorer navigieren und die Datei öffnen, warum kann ich sie nicht öffnen?

EDIT:

Ausgabe des Befehls DIR:

C:\Documents and Settings\Administrator>dir e:\stuff
 Volume in drive E has no label.
 Volume Serial Number is 5660-4957

 Directory of e:\stuff

23. 10. 2010  09:26    <DIR>          .
23. 10. 2010  09:26    <DIR>          ..
19. 10. 2010  20:07               385 index.py
23. 10. 2010  16:12             1 954 module.py
22. 10. 2010  19:16             8 335 backprop.py
19. 10. 2010  20:54             1 307 backprop-input.gif
19. 10. 2010  01:48               310 HelloWorld.kpf
23. 10. 2010  15:47                 0 log.txt.txt
               6 File(s)         12 291 bytes
               2 Dir(s)   8 795 586 560 bytes free

C:\Documents and Settings\Administrator>dir e:\
 Volume in drive E has no label.
 Volume Serial Number is 5660-4957

 Directory of e:\

16. 10. 2010  13:32    <DIR>          development-tools
23. 10. 2010  09:26    <DIR>          stuff
               0 File(s)              0 bytes
               2 Dir(s)   8 795 586 560 bytes free

Ich führe das Python-Skript von cmd wie folgt aus:

python E:\stuff\module.py

1voto

ghostdog74 Punkte 305138

Definieren Sie Ihre Pfadnamen mit os.path.join()

root="E:\\"
mylog = os.path.join(root,"stuff","log.txt") # or log.txt.txt as seen in your dir output
f = open(mylog)
...
f.close()

0voto

Folgendes hat bei mir funktioniert. Statt der Verwendung von Environment.getExternalStorageDirectory() verwenden. context.getFilesDir() .
Das folgende Codestück hat bei mir funktioniert.

public void create_file(Context context, String sFileName, String sBody) {
        try {
            File root = new File(context.getFilesDir(), "NEC_TEXT");
            if (!root.exists()) {
                root.mkdir();
            }
            File filepath = new File(root, sFileName);
            FileWriter writer = new FileWriter(filepath);
            writer.append(sBody);
            writer.flush();
            writer.close();
            Toast.makeText(context, "Saved", Toast.LENGTH_SHORT).show();
        } catch (IOException e) {
            Toast.makeText(context, "Error"+e.toString(), Toast.LENGTH_SHORT).show();
            e.printStackTrace();

           }
}

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X