2016-05-17 7 views
0

ich einige Textdateien erstellen und sie mit einem Zeitstempel in dem folgenden Verfahren sparen:Liste Dateien, die von Output in Android geschrieben

private void writeToFile(String data) { 
    try { 
     Long tsLong = System.currentTimeMillis()/1000; 
     String fileName = tsLong.toString() + "ds.txt"; 

     Log.i("FILENAME", fileName); 

     OutputStreamWriter outputStreamWriter = new OutputStreamWriter(openFileOutput(fileName, Context.MODE_PRIVATE)); 
     outputStreamWriter.write(data + "\r\n"); 
     outputStreamWriter.close(); 
    } 
    catch (IOException e) { 
     Log.e("FAILED", "File write failed: " + e.toString()); 
    } 
} 

Um nun aus den Akten zu lesen, muss ich die Dateinamen. Gibt es eine Möglichkeit, eine Liste aller Dateien in diesem Repository zu generieren?

+0

* Dateien in diesem Repository *, welche Repository? – Blackbelt

+1

siehe https://developer.android.com/reference/android/content/Context.html#getFilesDir() – njzk2

+0

Der Repo, wo ich die TXT-Datei in diesem Code speichern. Der Standard-Repo für die outputStreamWriter() Methoden – Michael

Antwort

1

Da njzk2 erwähnt, können Sie das Verzeichnis abrufen, in dem die Dateien mit der Methode getFilesDir() gespeichert werden.

Beispielcode:

for(File file : getFilesDir().listFiles()){ 
    // Open file and read the content 
} 
+0

Thant ist genau das, was ich gesucht habe! Danke vielmals! – Michael

1

Wenn Sie mit Repository einen Ordner auf Android-Gerät bedeuten, dann müssen Sie diesen Code-Snippet

File path = new File(mCurrentPath); 
File[] dirs = path.listFiles(); 
List<String> files = new ArrayList<String>(); 
if (dirs != null) { 
    Arrays.sort(dirs); 
    for (File fentry : dirs) { 
     if (!fentry.isDirectory()) { 
      files.add(fentry.getName()); 
     } 
    } 
}