1. 创建一个与"hello.txt"文件在相同目录下的另一个名为"abc.txt"
File file = new File(“d:/abc/hello.txt”);
@Test
public void test1() throws IOException {
File src = new File("d:/io/hello.txt");
File dest = new File(src.getAbsoluteFile().getParent(),"abc.txt");
dest.createNewFile();
System.out.println("创建成功");
}
2. 遍历指明目录下的所有的文件,输出所有的文件名。
@Test
public void test1(){
File file = new File("d:/io/java_code");
traverseFiles1(file);
}
public void traverseFiles(File file) {
File[] files = file.listFiles();
for (File f : files) {
if (f.isFile()) {
System.out.println(f.getParent() + "\t" + f.getName());
} else {
traverseFiles(f);
}
}
}
public void traverseFiles1(File file) {
if(file.isFile()){
System.out.println(file.getAbsolutePath());
}else{
File[] files = file.listFiles();
for(File f : files){
traverseFiles1(f);
}
}
}
3. 获取指定文件目录中所有文件的大小
@Test
public void test2() {
File file = new File("d:/io/java_code");
long length = recursionLength(file);
System.out.println(length);
}
public long recursionLength(File file) {
long length = 0;
if (file.isDirectory()) {
File[] list = file.listFiles();
for (File f : list) {
if (f.isDirectory()) {
length += recursionLength(f);
} else {
length += f.length();
}
}
return length;
}else{
return file.length();
}
}