java中File的总结

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_35654259/article/details/85702674

File构造方法

File(File parent, String child) 
          根据 parent 抽象路径名和 child 路径名字符串创建一个新 File 实例。 
File(String pathname) 
          通过将给定路径名字符串转换为抽象路径名来创建一个新 File 实例。 
File(String parent, String child) 
          根据 parent 路径名字符串和 child 路径名字符串创建一个新 File 实例。 

File中创建功能 

public boolean createNewFile():创建文件  如果文件的目录(文件夹)存在才会创建文件 否则不会
public boolean mkdir():创建单级文件夹  如果文件的父目录存在才会创建子文件夹 否则不会
public boolean mkdirs():创建多级文件夹
注意:
    File file = new File("D:\\demo\\demo1\\a.txt");
    file.mkdirs();//会将a.txt当做文件夹 

File中重命名功能 

public boolean renameTo(File dest) 

//如果路径名相同就改名 如果路径名不同就剪切加创建
  
  File file = new File("d:\\1.JPG");
	File file2 = new File("345.JPG");
	System.out.println(file2.renameTo(file));
	
	 File file = new File("1.JPG");
	File file2 = new File("345.JPG");
	System.out.println(file.renameTo(file2));	

基本获取功能 

public String getAbsolutePath():获取绝对路径
public String getPath():获取相对路径  相对于项目而言
public String getName():获取文件名
public long length():获取文件长度  单位字节(Byte)
public long lastModified():获取最后一次修改的时间  以毫秒为单位

File file = new File("1.JPG");
System.out.println(file.getAbsolutePath());
System.out.println(file.getPath());
System.out.println(file.getName());
System.out.println(file.length());
System.out.println(file.lastModified());

//输出结果
D:\mysoftware\myeclipse_workspace\Test\1.JPG
1.JPG
1.JPG
148663
1545890691997

高级获取功能 

    public String[] list():获取指定目录下的所有文件或者文件夹的名称数组
    public File[] listFiles():获取指定目录下的所有文件或者文件夹的File数组

File file = new File("d:\\");
		String[] a = file.list();
		for(String k:a){
			System.out.println(k);
		}
		
		
$RECYCLE.BIN
1.JPG
360Downloads
360下载文件
360安全浏览器下载
BaiduNetdiskDownload
BaiduYunGuanjia
Bin
CodeBlocks调式说明
demo
Download
hh
iphone
MSOCache
MyDownloads
MyDrivers
MyMusicPlayer.rar
mysoftware
software
StormMedia
System Volume Information

文件名称过滤器的实现思想及代码

public String[] list(FilenameFilter filter)
    public File[] listFiles(FilenameFilter filter)

将指定目录下的以.JPG文件结尾的输出
	File file = new File("d:\\iphone");
		File[] files = file.listFiles(new FilenameFilter() {
			
			@Override
			public boolean accept(File dir, String name) {
				// TODO Auto-generated method stub
				//return true
				//return false;
				//通过测试,我们知道,到底要不要把文件或者文件夹加入到数组中,取决于这里的返回值是true还是false
				System.out.println(dir+"---"+name);//dir是d:\iphone
				File filex = new File(dir,name);
				boolean flag = filex.isFile();
				boolean flag2 = name.endsWith(".JPG");
				return flag && flag2;
			}
		});
		System.out.println(files.length);
		for(File x : files){
			System.out.println(x.getName());
		}
	}

猜你喜欢

转载自blog.csdn.net/qq_35654259/article/details/85702674