Java 文件(File)类

file类 的作用

1.用于将文件或者文件夹封装成对象

2.方便对文件与文件夹进行操作

3.方便输入输出流的文件传输

一、创建文件对象,将已有的和未出现的文件或者文件夹封装成对象。

这四种方法都将C盘下的1.Java文件封装成对象。

二、file对象的判断

可以new file 可以创建已有的文件对象,也可以创建未存在的文件对象,那怎么去判断到底存不存在呢?

package com.neuedu.demo01;
import java.io.File;
/*
 * 文件类的使用
 */
public class fileDemo {
    public static void main(String[] args) {
        File f1=new File("E:\\learnJava\\hello.txt");
        System.out.println(f1.exists());//判断文件或目录是否存在
        System.out.println(f1.isDirectory());//判断文件对象表示的是否是一个目录
        System.out.println(f1.isFile());//判断文件对象表示的是否是一个文件
        System.out.println(f1.isAbsolute());//判断文件对象是否是一个绝对路径
        System.out.println(f1.isHidden());//判断文件对象是否是隐藏文件
    }
}

三、文件的创建和删除

file类提供了一些方法,能够在计算机上常见和删除文件或者目录

package com.neuedu.demo01;

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

/*
 * 文件类的使用
 *
 */
public class fileDemo {
    public static void main(String[] args) {
        File f1=new File("E:\\learnJava\\hello.txt");//一个文件
        File f2=new File("E:\\learnJava\\hello");//一个目录

        if (f1.exists()) {//文件文件已经存在
            f1.delete();  //则将已经存在的文件删除
        }else {
            try {
                f1.createNewFile();  //如果不存在,则创建出来
            } catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }
        if (!f2.exists()) {//如果目录不存在
            f2.mkdir();     //创建目录  f2.mkdirs();   创建多级目录
        }else {
            f2.delete();
        }
    }
}

四、File相关get方法

package com.neuedu.demo01;

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

/*
 * 文件类的使用
 *
 */
public class fileDemo {
    public static void main(String[] args) {
        File f1=new File("E:\\learnJava\\hello.txt");//一个文件
        File f2=new File("E:\\learnJava\\hello");//一个目录
        System.out.println(f1.getAbsolutePath());//获取文件对象的绝对路径,返回的是File对象----E:\learnJava\hello.txt
        System.out.println(f1.getAbsoluteFile());//获取文件对象的绝对路径,返回的是string-----E:\learnJava\hello.txt
        System.out.println(f1.getName());//获取文件对象的文件名或者是目录名----hello.txt
        System.out.println(f1.getParent());//获取文件对象的父目录,返回的是string----E:\learnJava
        System.out.println(f1.getParentFile());//获取文件对象的父目录文件对象,返回的是File对象----E:\learnJava
        try {
            System.out.println(f1.getCanonicalPath());  //获取文件对象的规范路径名----E:\learnJava\hello.txt
            System.out.println(f1.getAbsoluteFile());   //获取文件对象的规范路径形式,返回file对象----E:\learnJava\hello.txt
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
       System.out.println(f1.getPath()); ///获取文件路径E:\learnJava\hello.txt

        }
}

五、递归文件目录

通过list()返回文件目录中的文件和目录,返回的是字符串

通过listFile()返回文件目录中的文件和目录,返回的是文件对象

package com.neuedu.FileUtils;

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

/**
 *
 * @author wzc
 * 列出File的一些常用操作
 */
public class FileUtils {

    /**
     * 列出指定目录下及子目录下的所有文件
     * @param dir
     * @throws IOException
     */
    public static void listDirectory(File dir)throws IOException{
        //判断目录是否存在
        if (!dir.exists()) {
            throw new IllegalArgumentException("目录"+dir+"不存在");
        }
        //判断File dir是否是目录
        if (!dir.isDirectory()) {
            throw new IllegalArgumentException(dir+"不是目录");
        }
        /*String[] list = dir.list();  //列出文件中的文件或者目录,不包括子目录下的
        for (String string : list) {
            System.out.println(string);
        }*/
        //如果需要遍历子目录下的内容就需要构造成对象,继续递归s
        File[] files = dir.listFiles();//返回直接子目录对象
        /*for (File file2 : files) {
            System.out.println(file);
        }*/
        if (files!=null && files.length>0) {
            for (File file : files) {
                if (file.isDirectory()) {//如果子文件是目录
                    //递归
                    listDirectory(file);
                }else{
                    System.out.println(file);//如果是文件则输出
                }
            }
        }
    }
}
时间: 2024-10-13 01:31:50

Java 文件(File)类的相关文章

JAVA之File类 获取一个目录下的所有文件夹和文件,包括子文件夹和子文件

package ioTest.io3; import java.io.File; /* * 获取一个目录下的所有文件夹和文件,包括子文件夹和子文件 . * 并将文件夹和文件名称打印在控制台上面.并且要显示文件目录的层级 * 注:运用了递归的算法. */ public class FileDemo3 { public static void main(String[] args) { File dir=new File("F:\\黑马学习日程\\"); //File dir=new Fi

利用java.io.File类实现遍历本地磁盘上指定盘符或文件夹的所有的文件

2016-11-18 这是本人的第一篇随笔博客,纠结了半天还是选择自己学的时候比较用心的一些知识点上.利用java.io.File类指定本地的文件夹进行遍历所有的文件. package org.lxm.filedemo; import java.io.File; import java.util.Scanner; /* * 本程序是将某个盘的所有文件夹及其文件全部调出来的操作 */ public class FileAllDemo { public static void main(String

JAVA之File类-删除一个有内容的文件夹

package ioTest.io3; /* * 删除有内容的文件夹:从最里面一直向外删除.建议千万不要删除硬盘上面有用的文件夹哦 * 方法思路 * 循环+递归 */ import java.io.File; public class RemoveDir { public static void main(String[] args) { // TODO Auto-generated method stub File file=new File("F:\\removeDirTest")

JAVA之File类-将指定目录下的所有java文件的绝对路径存储到文本文件中

/* * 将指定目录下的所有java文件的绝对路径存储到文本文件中 * 建立一个java列表. * 思路: * 1.对指定目录进行递归 * 2.获取递归过程所有的java文件的路径 * 3.将这些路径存储在集合中 * 4.将集合中的内容写到文本文件 * 注:3,4步骤也可以合并成一个步骤 */ package ioTest.io3; import java.io.BufferedWriter; import java.io.File; import java.io.FileWriter; imp

Java之File类及递归树形展示目录_20150804

Java之File类及递归树形展示目录 20150804 下面的构造函数可以用来生成File 对象: File(String directoryPath)          File(String directoryPath, String filename)          File(File dirObj, String filename) 这里,directoryPath是文件的路径名,filename 是文件名,dirObj 一个指定目录的File 对象.下面的例子创建了三个文件:f1

33.JAVA编程思想——JAVA IO File类

33.JAVA编程思想--JAVA IO File类 RandomAccessFile用于包括了已知长度记录的文件.以便我们能用 seek()从一条记录移至还有一条:然后读取或改动那些记录. 各记录的长度并不一定同样:仅仅要知道它们有多大以及置于文件何处就可以. 首先.我们有点难以相信RandomAccessFile 不属于InputStream 或者OutputStream 分层结构的一部分.除了恰巧实现了DataInput 以及DataOutput(这两者亦由 DataInputStream

Java中File类的基本用法

File类的基本用法 java.io.File类:代表文件和目录.在开发中,读取文件.生成文件.删除文件.修改文件的属性时经常会用到此类. File类的常用构造方法:public File(String pathname) 以pathname为路径创建File对象,如果pathname是相对路径,则默认的当前路径在系统属性user.dir中存储. 文件的创建 import java.io.File; import java.io.IOException; public class Test {

Java基础-File类篇、递归篇

1. File类 1.1 File类介绍 ? java.io.File 类是文件和目录路径名的抽象表示,主要用于文件和目录的创建.查找和删除等操作. 1.2 构造方法 语法 public File(String pathname) :通过将给定的路径名字符串转换为抽象路径名来创建新的 File实例. public File(String parent, String child) :从父路径名字符串和子路径名字符串创建新的 File实例. public File(File parent, Str

【56】java本地文件File类详解

1.java类的介绍 public class File extends Object implements Serializable, Comparable<File> 文件和目录路径名的抽象表示形式. File既可以表示文件也可以表示目录. 用户界面和操作系统使用与系统相关的路径名字符串 来命名文件和目录.此类呈现分层路径名的一个抽象的.与系统无关的视图. 2.构造方法 File(File parent, String child) 根据 parent 抽象路径名和 child 路径名字符

Java中File类如何扫描磁盘所有文件包括子目录及子目录文件

详细情况看代码吧,我这个代码有个BUG,扫描U盘的时候可能会报空指针异常,希望大虾指点下 import java.io.File; import java.util.ArrayDeque; public class FileListDemo { public static void main(String[] args) { File f1 = new File("E:\\"); //深度搜索 getPathDFS(f1); System.out.println("=====