IO流——File类

Posted 薰衣草

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了IO流——File类相关的知识,希望对你有一定的参考价值。

File

用来将文件或文件夹封装成对象

方便对文件与文件夹的属性信息进行操作

File对象可以作为参数传递给流的构造函数

import java.io.*;
public class FileDemo 


	public static void main(String[] args) throws IOException
	
		consMehtod();
	
	public static void consMehtod()
	
		//将a.txt封装成file对象。可以将已有的和未出现的文件或文件夹封装成对象
		File f1 = new File("a.txt");
		
		File f2 = new File("c:\\\\abc","b.txt");
		
		File dFile = new File("c:\\\\abc");
		File f3 = new File(dFile,"c.txt");
		
		sop("f1:"+f1);
		sop("f2:"+f2);
		sop("f3:"+f3);
		
		File f4 = new File("c:"+File.separator+"abc"+File.separator+"zzz"+File.separator+"a.txt");
		//关键字separator:与系统有关的默认名称分隔符。实现跨平台性
		sop("f4:"+f4);
	
	public static void sop(Object obj)
	
		System.out.println(obj);
	


import java.io.File;

/*
4。获取信息
	getName():
	getPath():
	getParent():
	
	getAbsolutePath():
	long lastModified():
	long length():
 */
public class TransStreamDemo 

	public static void main(String[] args)
	
		
	
	public static void method_4()
	
		File f = new File("file.txt");
		
		sop("path:"+f.getPath());
		sop("abspath:"+f.getAbsolutePath());
		sop("parent:"+f.getParent());//该方法返回的是绝对路径中的父目录,
		//如果获取的是相对路径,返回null。如果相对路径中有上一层目录,那么该目录就是返回结果。
	
	public static void method_5()
	
		File f1 = new File("c:\\\\Test.java");
		File f2 = new File("d:\\\\hello.java");
		
		sop("rename:"+f1.renameTo(f2));
	
	


文件列表:


  String[] list() 

          返回一个字符串数组,这些字符串指定此抽象路径名表示的目录中的文件和目录。 

 String[] list(FilenameFilter filter) 

          返回一个字符串数组,这些字符串指定此抽象路径名表示的目录中满足指定过滤器的文件和目录。 

 File[] listFiles() 

          返回一个抽象路径名数组,这些路径名表示此抽象路径名表示的目录中的文件。 

 File[] listFiles(FileFilter filter) 

          返回抽象路径名数组,这些路径名表示此抽象路径名表示的目录中满足指定过滤器的文件和目录。 

 File[] listFiles(FilenameFilter filter) 

          返回抽象路径名数组,这些路径名表示此抽象路径名表示的目录中满足指定过滤器的文件和目录。 

static File[] listRoots() 

          列出可用的文件系统根 

 

import java.io.File;
import java.io.FilenameFilter;


public class FileDemo 

	public static void main(String[] args)
	
		//listRootsDemo();
		//listDmeo();
		
		File dir = new File("c:\\\\");
		File[] files = dir.listFiles();
		
		for(File f: files)
		
			sop(f.getName()+"::"+f.length());
		
	
	public static void listDmeo()
	
		File f = new File("c:\\\\");
		String[] names = f.list();//调用list方法的file对象必须是一个目录,
								//该目录还必须存在
		
		for(String name : names )
		
			sop(name);
		
	
	
	public static void listRootsDemo()
	
		File[] files = File.listRoots();
		
		for(File f : files)
		
			sop(f);
		
	
	public static void listDemo_2()
	
		File dir = new File("d:\\\\");
		String[] arr = dir.list(new FilenameFilter() 
		
			
			@Override
			public boolean accept(File dir, String name) 
				// TODO Auto-generated method stub
				/*sop("dir:"+dir+"....name::"+name);
				return true;
				*/
				return name.endsWith(".bmp");
			
		);
		for(String name : arr)
		
			sop(name);
		
	
	public static void sop(Object obj)
	
		System.out.print(obj);
	
	




以上是关于IO流——File类的主要内容,如果未能解决你的问题,请参考以下文章

IO流——File类

IO流——File类

File流与IO流 看这一篇就够了

IO流(File类

java IO流 之 FIle类基础

Java IO流 之 File 文件类