Java中File类-10-File类的的获取功能

      接着来学习Java中的File类的方法,这篇来学习获取功能,也就是API文档中看到的getxxx方法。主要有获取绝对路径,获取路径,获取名称,获取长度,字节数,获取最后一次修改时间,毫秒值,获取指定路径下所有文件或者文件夹的名称的数组,获取指定路径下文件或文件夹的File数组。


1.获取绝对路径

       在Eclipse项目的根目录下创建一个abc.txt和aaa文件夹,下面演示abc.txt和aaa文件夹的在磁盘的绝对路径,绝对路径就是从盘符开始的路径。

package file;

import java.io.File;

public class Demo1_File {

	public static void main(String[] args) {
		
		File file1 = new File("abc.txt");
		//获取文件的绝对路径
		System.out.println(file1.getAbsolutePath());
		
		File dir1 = new File("aaa");
		System.out.println(dir1.getAbsolutePath());
	}

}

运行效果:

C:\Users\Administrator\workspace\JavaDemo\abc.txt
C:\Users\Administrator\workspace\JavaDemo\aaa


2.获取路径

和上面获取绝对路径对比,其实getPath()方法默认输出是文件的相对路径。

package file;

import java.io.File;

public class Demo1_File {

	public static void main(String[] args) {
		
		File file1 = new File("abc.txt");
		//获取文件的路径
		System.out.println(file1.getPath());
		
		File dir1 = new File("aaa");
		System.out.println(dir1.getPath());
	}

}

运行之后输出:

abc.txt
aaa


3.获取名称 getName()

这个就是拿到文件或文件夹的名称

package file;

import java.io.File;

public class Demo1_File {

	public static void main(String[] args) {
		
		File file1 = new File("abc.txt");
		//获取文件的路径
		System.out.println(file1.getName());
		
		File dir1 = new File("aaa");
		System.out.println(dir1.getName());
	}

}

运行:

abc.txt
aaa


4.获取字节长度(个数)

这个我们在abc.txt写点内容,这个获取长度就统计里面字符的个数。

package file;

import java.io.File;

public class Demo1_File {

	public static void main(String[] args) {
		
		File file1 = new File("abc.txt");
		//获取文件的路径
		System.out.println(file1.length());
		
	}

}

我这边打印出7个,就是abc.txt 随便写了几个英文字母。


5.获取最后一次修改时间

可以获取文件夹或者文件的最后一次修改时间。

package file;

import java.io.File;

public class Demo1_File {

	public static void main(String[] args) {
		
		File file1 = new File("abc.txt");
		//获取文件的最后一次修改时间
		System.out.println(file1.lastModified());
		File dir = new File("aaa");
		System.out.println(dir.lastModified());
		
	}

}

运行,打印的是一个从1970年1月1号0时0分0秒到文件修改的时间的毫秒值

1530977356336
1530805106868

      如果想把这个修改时间换成格式化,我们可以利用Date类的方法去实现。后多后台系统,我们可以看到,文件的最后一次修改时间就是这么得到的。


6.获取指定路径下文件的名称数组

例如我想获取我C盘Program File这层下文件和文件夹的名称的数组。

package file;

import java.io.File;

public class Demo1_File {

	public static void main(String[] args) {
		
		File file1 = new File("C:\\Program Files");
		String[] arr = file1.list();
		
		for (String string : arr) {
			System.out.println(string);
		}
	}

}

运行打印出来,是你自己C盘下Program Files下文件夹的名称。


7.获取指定路径下文件对象

这个和上面获取指定路径下的文件名称数组不一样,这个是获取文件对象数组。

package file;

import java.io.File;

public class Demo1_File {

	public static void main(String[] args) {
		
		File file1 = new File("C:\\Program Files");
		File[] files = file1.listFiles();
		
		for (File file : files) {
			System.out.println(file);
		}
	}

}
      运行之后,打印出了文件的绝对路径。其实我们是获取的没一个File对象,上面刚刚File类重写了toString方法,所以默认打印文件的绝对路径,当然我们可以拿到文件对象之后做一些其他事情,例如判断文件是否文件还是文件夹,文件大小等。

你可能感兴趣的:(Java中File类-10-File类的的获取功能)