30.File

来源:互联网 发布:数据库表设计 编辑:程序博客网 时间:2024/05/29 16:22
java.io.File;
1.File类和流无关,不能通过该类完成文件的读写
2.File是文件和目录路径名的抽象表现形式

File代表的是硬盘上的Directory和file

import java.io.*;import java.text.SimpleDateFormat;import java.util.*;public class HelloWorld {public static void main(String[] args)throws Exception{//path相对路径File f1 = new File("D:/java程序/text.txt");System.out.println(f1.exists());//存在返回true 不存在创建目录//创建目录File f2 = new File("D:/course");f2.mkdir();//创建文件File f3 = new File("D:/hello");f3.createNewFile();//创建多重目录File f4 = new File("D:/a/b/c/d");f4.mkdirs();//获取绝对路径String absolutePath = f1.getAbsolutePath();//获取文件名System.out.println(f1.getName());//获取文件最后一次修改时间Date t = new Date(f1.lastModified());System.out.println(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss SSS").format(t));//获取文件长度(字节数)System.out.println(f1.length());//列出子文件File[] fs = f3.listFiles();for(File f:fs) {if(f.getAbsolutePath().endsWith("java")) {//找出以.java结尾的文件System.out.println(f.getAbsoluteFile());}}}}

2.使用递归,找出某目录下所有子目录及子文件

import java.io.*;import java.util.*;public class HelloWorld {public static void main(String[] args)throws Exception{File f = new File("D:\\软件\\NBA 2Koline");method1(f);}public static void method1(File f) {if(f.isFile()) {return;}File[] fs = f.listFiles();for(File subF:fs) {System.out.println(subF.getAbsolutePath());method1(subF);}}}

JDK5.0新特性:增强for循环

语法:for(类型 变量:数组名/集合名){}

(集合要想使用增强for循环这种语法,集合需要使用泛型)

int[] a ={1,2,3,4,5,6,7}; for(int e:a) { //int e代表的是集合或者数组中的每一个元素 System.out.println(e); }