无法在两个不同的活动中从同一文件路径获取文件名

时间:2016-06-06 02:27:22

标签: java android file listview

我尝试创建一个充当其他文件的文件夹的文件,并在listView中显示所有这些文件的列表。我从listView活动开始,然后使用intent转到"添加文件"活动。用户为文件命名,我通过将EditText内容放入String fileBeingAddedTitle来获取名称。我用来制作文件的代码是

File folderFile = getApplicationContext().getDir("folder_file",Context.MODE_PRIVATE);
File fileBeingAdded = new File(folderFile.getPath(), fileBeingAddedTitle);

在此之后,意图开始回到listActivity。在那里,我希望我可以使用" .getDir"要找到'文件夹文件',然后使用.list()来获取数组上的名称。然后我将从该数组转移到arrayList,以便我可以使用arrayAdapter获取listView上的内容。

File folderFile = getApplicationContext().getDir("folder_file", Context.MODE_PRIVATE);
String[] fileListViewContentArray = folderFile.list();
for(int i=0; i<fileListViewContentArray.length-1; i++){

    fileListViewContentArrayList.add(fileListViewContentArray[i]);

}

从这里开始我使用了一个arrayAdapter,并且我已经使用了虚拟内容来确保该部分可以正常工作(它确实如此)。我的问题是列表没有显示,我90%确定它与文件有关,但我不确定我做错了什么。路径完全一样,所以我不知道什么是错的。请帮忙。先感谢您。

1 个答案:

答案 0 :(得分:0)

在上述问题的评论中,您将找到Mike M.为我提供的解决方案。在我的问题的第一个代码块中创建文件之后添加它

File folderFile = getApplicationContext.getDir("folder_file", Context.MODE_PRIVATE);
File fileBeingAdded = new File(folderFile.getPath(), fileBeingAddedTitle);
try{
    folderFile.createNewFile();
    fileBeingAdded.createNewFile();
} catch (IOException e){
    e.printStackTrace();
}

这个物理实例化文件(对我来说无论如何),这个列表现在很好用。再次感谢Mike M.

相关问题