欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Java IO流 File类的常用API实例

程序员文章站 2024-03-31 11:29:40
•file类   1.只用于表示文件(目录)的信息(名称、大小等),不能用于文件内容的访问。 package cn.test; import ja...

•file类

  1.只用于表示文件(目录)的信息(名称、大小等),不能用于文件内容的访问。

package cn.test;
import java.io.file;
import java.io.ioexception;
public class demo16 {
  public static void main(string[] args) {
    file file = new file("f:\\javaio");
    //文件(目录)是否存在
    if(!file.exists()) {
      //创建目录
      file.mkdir();//file.mkdirs();
    } else {
      //文件(目录)删除
      file.delete();
    }
    //是否是目录 如果是目录返回true,如果不是目录或目录不存在返回false
    system.out.println(file.isdirectory());
    //是否是文件
    system.out.println(file.isfile());
    //file file2 = new file("f:\\java\\日记1.txt");
    file file2 = new file("f:\\javaio", "日记2.txt");
    if (!file2.exists()) {
      try {
        //创建文件
        file2.createnewfile();
      } catch (ioexception e) {
        e.printstacktrace();
      }
    } else {
      file2.delete();
    }
    system.out.println(file);
    system.out.println(file.getabsolutepath());//返回绝对路径
    system.out.println(file.getname());//目录名称
    system.out.println(file2.getname());//文件名称
    system.out.println(file.getparent());//父级目录的路径
    system.out.println(file.getparent());//父级目录的路径
  }
}

   2.遍历目录

package com.test.io;
import java.io.file;
import java.io.ioexception;
/**
 * file类的常用操作
 * @author administrator
 *
 */
public class fileutils {
  /**
   * 列出指定目录下(包括其子目录)的所有文件
   * @param dir
   * @throws ioexception
   */
  public static void listdirectory(file dir) throws ioexception{
    if (!dir.exists()) {
      throw new illegalargumentexception("目录" + dir + "不存在");
    }
    if (!dir.isdirectory()) {
      throw new illegalargumentexception(dir + "不是目录");
    }
    /* string[] filenames = dir.list();//返回的是字符串数组,列出当前目录下的子目录和文件(不包含子目录下的内容)
    for (string string : filenames) {
      system.out.println(dir + "\\" +string);
    } */
    //如果要遍历子目录下的内容,就需要构造file对象做递归操作
    file[] files = dir.listfiles();//返回的是直接子目录(文件)的抽象
    if (files != null && files.length > 0) {
      for (file file : files) {
        if (file.isdirectory()) {
          //递归
          listdirectory(file);
        } else {
          system.out.println(file);
        }
      }
    }
  }
}

以上所述是小编给大家介绍的java io流 file类的常用api实例,希望对大家有所帮助