操作文件的类File

在整个io包中,唯一与文件本身有关系的类就是File,使用File类可以进行创建或删除文件等常用操作,要使用File类,则首先要观察File类的构造方法,如下:

public File (String pathname) -->实例化File类时,必须设置好路径

路径如,d:\\test.tst

1.创建一个新文件

  File类的对象实例化完成之后,就可以使用CreatNewFile创建一个新的文件,但是此方法使用了throws关键字所以在使用中,必须使用try..cath进行异常处理

范例:创建新文件

package test2;

import java.io.File;
import java.io.IOException;

public class CreatNewFile {
	public static void main(String[] args) {
		File f = new File("d:\\test.txt");
		try {
			f.createNewFile(); // 根据以上路径创建新文件
		} catch (IOException e) {
			e.printStackTrace();
		}
	}
}

  结果:

在D盘中创建相应的文件

注意:

  根据操作系统不同,路径的分隔符表示不一样,例如:

 window 用 “\”

linux   用 "/"

 

package test2;

import java.io.File;
import java.io.IOException;

public class CreatNewFile {
	public static void main(String[] args) {
		// File f = new File("d:\\test.txt");
		String path = "d:" + File.separator + "test1.txt";// 拼凑出可以适应操作系统的路径
		File f = new File(path);

		try {
			f.createNewFile(); // 根据以上路径创建新文件
		} catch (IOException e) {
			e.printStackTrace();
		}
	}
}

2.删除一个指定的文件

File类中的delete()方法

范例:删除文件

   

package test2;

import java.io.File;
import java.io.IOException;

public class CreatNewFile {
	public static void main(String[] args) {
		// File f = new File("d:\\test.txt");
		String path = "d:" + File.separator + "test1.txt";// 拼凑出可以适应操作系统的路径
		File f = new File(path);

		// f.createNewFile(); // 根据以上路径创建新文件
		f.delete();
	}
}

  File类提供一个exists()方法,可以判断文件是否存在,

 

package test2;

import java.io.File;
import java.io.IOException;

public class CreatNewFile {
	public static void main(String[] args) {
		// File f = new File("d:\\test.txt");
		String path = "d:" + File.separator + "test1.txt";// 拼凑出可以适应操作系统的路径
		File f = new File(path);

		// f.createNewFile(); // 根据以上路径创建新文件
		if (f.exists()) {
			f.delete();
		} else {
			System.out.println("文件不存在");
		}

	}
}

  3.综合实例:创建和删除文件的操作

  

package test2;

import java.io.File;
import java.io.IOException;

public class CreatNewFile {
	public static void main(String[] args) {
		// File f = new File("d:\\test.txt");
		String path = "d:" + File.separator + "test1.txt";// 拼凑出可以适应操作系统的路径
		File f = new File(path);

		// f.createNewFile(); // 根据以上路径创建新文件
		if (f.exists()) {
			f.delete();
		} else {

			try {
				f.createNewFile();
			} catch (IOException e) {
				e.printStackTrace();
			}
		}

	}
}

4.可以用mkdir创建文件夹

5. 列出指定目录的全部文件

  如果现在给一个目录,则可以直接列出目录中的内容,在File类中定义了如下两个列出文件夹内容的方法

  1.public  String[] list():列出全部名称,返回一个字符串数组

  2.public  File[]  listFiles():列出完整的路径,返回一个File对象数组

范例:使用list()方法列出一个目录中的全部内容

   

package test2;

import java.io.File;

public class Filelist {
	public static void main(String[] args) {
		File f = new File("d:" + File.separator);// 给出一个路径
		String str[] = f.list();// 列出给定目录中的内容
		for (int i = 0; i < str.length; i++) {
			System.out.println(str[i]);// 打印数组内容
		}

	}
}

  结果:

$RECYCLE.BIN
1
2
2-5.4
3
3-5.4
360Downloads
4
4.5.4
;test1.txt
centos-1
centos-2
centos-3
centos-4
Program Files
Program Files (x86)
RECYCLER
System Volume Information
test.txt
test1.txt
xp
~1
快盘

范例:加上路径

 

package test2;

import java.io.File;

public class Filelist {
	public static void main(String[] args) {
		File f = new File("d:" + File.separator);// 给出一个路径
		File[] str = f.listFiles();// 列出给定目录中的内容
		for (int i = 0; i < str.length; i++) {
			System.out.println(str[i]);// 打印数组内容
		}

	}
}

  结果:

d:\$RECYCLE.BIN
d:\1
d:\2
d:\2-5.4
d:\3
d:\3-5.4
d:\360Downloads
d:\4
d:\4.5.4
d:\;test1.txt
d:\centos-1
d:\centos-2
d:\centos-3
d:\centos-4
d:\Program Files
d:\Program Files (x86)
d:\RECYCLER
d:\System Volume Information
d:\test.txt
d:\test1.txt
d:\xp
d:\~1
d:\快盘

 

 

 

 

 

 

 

posted on 2011-12-11 11:22  wangbokun  阅读(320)  评论(0编辑  收藏  举报

导航