列出由Android中的OutputStreamWriter编写的文件

时间:2016-05-17 13:13:41

标签: android inputstream outputstream

我正在创建一些文本文件,并在下面的方法中使用时间戳保存它们:

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());
    }
}

现在为了从文件中读取,我需要文件名。有没有办法生成该存储库中所有文件的列表?

2 个答案:

答案 0 :(得分:1)

正如njzk2所提到的,您可以通过getFilesDir()方法获取保存文件的目录。

示例代码:

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

答案 1 :(得分:1)

如果你的意思是在Android设备上使用存储库一个文件夹,那么你需要这段代码

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());
        }
    }
}