码迷,mamicode.com
首页 > 编程语言 > 详细

Java—IO流 File类的常用API

时间:2017-05-06 01:06:35      阅读:220      评论:0      收藏:0      [点我收藏+]

标签:nis   false   ram   amp   parent   null   pat   create   nts   

  • 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

标签:nis   false   ram   amp   parent   null   pat   create   nts   

原文地址:http://www.cnblogs.com/tianxintian22/p/6813358.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!