2017-07-07 2 views
0

Ich versuche, die beiden Dateien, Spring v2.json und Test.json, in meiner Android-App zugreifen. Allerdings werde ich sie mit Windows hinzufügen, wenn mein Telefon verbunden ist, aber wenn ich meine App starte, scheint die Datei zu verschwinden.Android - Fehlende Dateien zwischen Datei-Explorer

gibt es die Datei

File file = new File(getExternalFilesDir(null), "Spring v2.json"); 

Check ist die Datei vorhanden ist

if (file.exists()) { 
    TransferObserver observer = transferUtility.download(
     "easelbucket", // bucket to download from 
     "sections/" + objectKey,  // key for object to be downloaded 
     file   // file to download object to 
    ); 
    } else { 
    Toast.makeText(this, "File does not exist", Toast.LENGTH_SHORT).show(); 
    return null; 
    } 

Ich weiß, dass die Datei nicht mehr vorhandenen, weil (1) die if-Anweisung den anderen Block eintritt, und (2) Die App stürzt ab, wenn sie versucht, das Ergebnis der Datei zu verwenden.

Windows File ExplorerAndroid File Explorer

+0

versuchen, die Leerzeichen aus dem Dateinamen zu entfernen –

+0

Es ist ein Zeichenfolgenliteral ist, so sollte es keinen Unterschied machen. Wenn ich "Spring v2.json" durch "Test.json" ersetze, was eine andere Datei ist, die ich habe, passiert das Gleiche. – retrosysing

Antwort

0
File file = new File(getExternalFilesDir(null), "/Spring v2.json") 

Sie vergessen, bevor Dateinamen senken. Prüfen Sie auch, ob

.canRead(); 

und

.canExecute(); 
+0

Wenn ich debugge, ist das/schon da, also ist es ein korrekter Dateipfad. Ich glaube nicht, dass mein Problem der Pfad ist, aber die Datei verschwindet einfach im Android Explorer. – retrosysing

+0

Ich kann schon raten, dass diese falsch zurückgeben werden, da die Datei nicht mehr existiert, wenn ich versuche zu laufen. – retrosysing

+0

Dateien konnten sich nicht selbst löschen. Vielleicht haben Sie ein Antivirenprogramm installiert oder so etwas bei der Ausführung. Sie können auch versuchen, die schreibgeschützte Berechtigung für diese Datei festzulegen, um zu überprüfen, ob Ihr Code normal ausgeführt wird. – Arthur