java中File类中list()和listFiles()方法区别
【File排序讨论】File list()读取文件时,文件的排序是怎样的
http://bbs.csdn.net/topics/390169759
代码如下:
1
2
|
File file = new File(C:\\Test\\); String[] myList = file.list(); |
在Test文件夹下有文件:
1.txt 2012/08/10
2.txt 2012/08/11
3.txt 2012/08/12
4.txt 2012/08/13
最想知道的问题:list()读文件的时候,是以什么样的方式来对文件进行排序的?是按照“大小”还是“时间”或者是其他的?
(我试过,与文件名无关)
提问:
1.list()方法将文件存入 MyList数组中,是否会因为Test文件夹中的文件排序变化而变化(文件夹中文件的排序有:名称、大小、时间、类型)
对应实际需求:
1、有 1.txt 2.txt 3.txt,其中,1.txt中的一条数据在2.txt中存在,要求2.txt中的这一条数据将1.txt中的这一天覆盖(前提:1.txt 更新时间:2012/08/09 2.txt 更新时间是:2012/08/10)
新数据将老数据覆盖
---------------------------------------------------------------------------------------------------------------------------
这是 API
list
public String[] list()返回一个字符串数组,这些字符串指定此抽象路径名表示的目录中的文件和目录。
如果此抽象路径名不表示一个目录,那么此方法将返回 null。否则返回一个字符串数组,每个数组元素对应目录中的每个文件或目录。表示目录本身及其父目录的名称不包括在结果中。每个字符串是一个文件名,而不是一条完整路径。
不保证所得数组中的相同字符串将以特定顺序出现,特别是不保证它们按字母顺序出现。
返回:
字符串数组,这些字符串指定此抽象路径名表示的目录中的文件和目录。如果目录为空,那么数组也将为空。如果此抽象路径名不表示一个目录,或者发生 I/O 错误,则返回 null。
抛出:
SecurityException - 如果存在安全管理器,且其 SecurityManager.checkRead(java.lang.String) 方法拒绝对目录进行读访问
-------------------------------------------------------------------------------------------------------------------------------
java中File类中list()和listFiles()方法区别
http://blog.csdn.net/baidu_37107022/article/details/70305005
版权声明:本文为博主原创文章,未经博主允许不得转载。 http://blog.csdn.net/baidu_37107022/article/details/70305005
list()和listFiles()方法区别:
1.返回值类型不同:前者为String数组,后者为File对象数组
2.数组中元素内容不同:前者为string类型的【文件名】(包含后缀名),后者为File对象类型的【完整路径】因此,遍历文件夹中所有文件,包括子文件夹中的文件时,必须用listFiles()方法
》》遍历文件夹中所有文件,包括子文件夹中的文件实例见下节内容《《
演示:
package Flie类中list和listFiles方法区别;
import java.io.File;
public class Test {
public static void main(String[] args){
File file=new File("D:\\tcb\\工具");
//list()方法存储的是文件名
System.out.println("list()方法遍历的结果:");
String[] strings=file.list();
for (String string : strings) {
System.out.println(string);
}
System.out.println();
//listFiles()方法存储的是文件的完整路径,因此在遍历文件夹以及子文件夹中所有文件时必须使用listFiles()方法
System.out.println("listFiles()方法遍历的结果:");
File[] files=file.listFiles();
for (File file2 : files) {
System.out.println(file2);
}
}
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
结果:
- 顶
- 0
- 踩
- 0