Java学习IO流(一)

java学习IO流

1.在File中包含四个静态类型的字段
(1)static String pathSeparator 与系统有关的路径分隔符,为了方便它表示为一个字符串
在windows里表示为;Linux里为:

(2)static char pathSeparatorChar 与系统有关的路径分隔符

(3)static String separator 与系统有关的默认名称分隔符,为了方便,他被表示成为一个字符串。在windows里表示为\ Linux里面表示为/

(4)static char separatorChar 与系统有关的默认名称分隔符。
2.File的构造器(构造方法摘要)
(1)File(String parent ,String child)
传递路径,传递字符串的父路径,字符串的子路径
(2)File(String pathname)
将路径名变成File类的对象
(3)File(File parent,String child)
传递路径,传递File类型父路径,字符串子路径
(4)File(URI uri)
例:
File file =new File(“c:”,“windows”);
System.out.println(“file”);
例:
File file=new File(“d:\abc\eclipse\eclipse.ini” );
System.out.println(“file”);输出结果d:\abc\eclipse\eclipse.ini
例:
File parent=new File(“d:”);
File file=new File(parent,“eclipse”);
System.out.println(“file”);父路径可以使用File类所封装的方法
3.路径:
(1)绝对路径
在系统中具有唯一性
c:\windows\system32
http://www.itcast.cn
(2)相对路径
表示的是路径之间的相对关系
d:\develop\java\jdk1.7.0_72\bin
路径之间的关系
java 父目录是d:、、develop
java 子目录是:jdk1.7.0_72 jre7
父目录是 唯一性
子目录可以是多个
4.File类的创建文件的功能
boolean createNewFile()//该方法只能创建文件,不能创建文件夹

public static void function()throws IOException{
	File file=new File("C:\\a.txt");
	boolean b=file.createNewFile();
	System.out.println(b);//当返回值为true则创建文件成功
		}

File类的创建文件夹的功能
boolean mkdir()
boolean mkdirs()可创建多层文件夹

public static void function(){
	File file=new File("c:\\abc");
	boolean b=file.mkdir();
	System.out.println(b);//当返回值为true则创建文件夹成功
}

6.File类的删除功能
Boolean delete()
删除的文件或者是文件夹,在File的构造方法中给出
删除成功返回true删除失败返回false

public static void function(){
	File file=new File("c:\\abc");
	boolean b=file.delete();
	System.out.println(b);
}

7.File类的获取功能
(1)getName()返回此抽象路径名表示的文件或目录得名称
String getName()返回值为String类型

public static void function(){
	File file=new File("d:\\eclipse\\eclipse.exe");
	String name=file.getName();
	System.out.println(name);//获取路径中最后部分的名字
}

(2)getPath()返回一个字符串类型的路径
(3)length()返回类型为long型,返回路径中方表示文件的字节数

public static void function(){
	File file=new File("d:\\eclipse\\eclipse.exe");
	long length=file.length();
	System.out.println(length);
}

(4)String getAbsolutePath()返回String对象
File getAbsoluteFile()返回File对象

public static void function(){
	File file=new File("d:\\eclipse");
	File absolute=file.getAbsoluteFile();
	System.out.println(absolute);
}

注释:eclipse环境中,写的是一个相对路径,绝对位置为工程的根目录
(5)String getParent()
File getParentFile()

public static void function(){
	File file=new File("d:\\eclipse\\eclipse.exe");
	File parent =file.getParentFile();
	System.out.println(parent);
}

(6)String[] list()//返回的是单个名字
File[] listFiles()//返回的是路径中文件文件夹的全部路径
获取到,File构造方法中封装的路径中的文件和文件夹名(遍历一个目录)

public static void function() {
	File file=new File("d:\\eclipse");
	String[] strArr=file.list();
	for(String str : strArr){
		System.out.println(str);
	}
}//遍历某一个文件下的目录

文件获取过滤器
listFiles(FileFilter filter)接口类型
实现File
FileFIlter接口的实现

import java.io.File;
import java.io.Filefilter;
public class Myfilter implements Filefilter{
	public boolean accept(File pathname){
		return pathname.getName().endsWith(".java");
	}
}
public class FileDemo{
	public static void main(String []args){
		File file=new file("c:\\demo");
		File fileArr=file.listFiles(new MyFilter());
		//listFiles()遍历目录的同时,获取到了文件名全路径,调用过滤器的方法accept,将获取到的路径传递给accept方法的参数pathname
		for(File f:fileArr){
			System.out.println(f);
		}	
	}
}

(7)File[] listRoots()//返回 系统中的所有根目录
8.File类的判断功能
(1)boolean exists()
判断File构造方法中封装的路径是否存在
存在返回true不存在返回false
(2)boolean isDirectory()
判断File构造方法中封装的路径是不是文件夹
是返回true不是返回false
(3)boolean isFile()
判断File构造方法封装的路径是不是文件
9.定义方法实现目录全遍历(递归)

public static void getAllDir(File dir){
	//调用方法listFiles()对目录进行遍历
	System.out.println(dir);
	File[] fileArr=dir.listFiles();
	for(File f: fileArr){
		if(f.isDirectory()){
			getAllDir(f);
		}
		else{
			System.out.println(f);
		}
	} 
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值