public class File extends Object implements Serializable, Comparable<File>

构造方法:

public File(String pathname)

按照完整路径实例化

public File(File parent, String child)

按照父路径和文件名实例化

成员:

public static final String separator

目录分隔符 ('\'、'/'等)

public static final String pathSeparator

多路径切换符(';'、':'等)

实例:

package wiki.jjcc.test.file;

import java.io.File;

public
class FileTest {

    public
static
void main(String[] args) {

        System.out.println("windows系统中");

        System.out.println("File.pathSeparator="+"["+File.pathSeparator+"]");

        System.out.println("File.separator="+"["+File.separator+"]");

    }

}

windows系统中

File.pathSeparator=[;]

File.separator=[\]

常用方法:

方法

功能

public boolean createNewFile()throws IOException

创建新文件

public boolean delete()

删除文件

public boolean exists()

判断文件是否存在

public String getName()

取得文件名

public String getParent()

取得父路径

public File getParentFile()

取得父路径

public String getPath() 

取得完整路径

public boolean isDirectory() 

判断是否为目录

public boolean isFile() 

判断是否为文件

public long lastModified() 

最后修改日期

public long length() 

取得文件大小

public File[] listFiles() 

取得所有

public String[] list() 

 

public boolean mkdir() 

创建单个目录

public boolean mkdirs() 

创建多级目录

public boolean renameTo(File dest) 

文件重命名

public String toString() 

将File对象转换为String对象

 

实例1:

package wiki.jjcc.test.file;

import java.io.File;

import java.io.IOException;

public
class FileTest2 {

    public
static
void main(String[] args) {

        String sep = File.separator;

        File file1 = new File("d:"+sep+"temp"+sep+"test.txt");

        if(file1.exists()){

            file1.delete();

        }else{

            try {

                file1.createNewFile();

            } catch (IOException e) {

                e.printStackTrace();

            }

        }

    }

}

以上例子判断相应文件是否存在,若存在则删除文件,若不存在则创建文件。

 

 

实例2:

package wiki.jjcc.test.file;

import java.io.File;

import java.io.IOException;

public
class FileTest2 {

    public
static
void main(String[] args) {

        String sep = File.separator;

        File file1 = new File("d:"+sep+"temp"+sep+"adir");

        if(file1.exists()){

            file1.delete();

        }else{

            try {

                file1.createNewFile();

            } catch (IOException e) {

                e.printStackTrace();

            }

        }

    }

}

当"adir"文件夹存在时会删除,当文件夹不存在时会新建一个普通文件。

 

实例3:列出D盘下所有文件

package wiki.jjcc.test.file;

 

import java.io.File;

 

public class FileTest4 {

    public static void main(String[] args) {

        String sep = File.separator;

        File file1 = new File("d:"+sep+"temp"+sep+"test.txt");

        File file2 = new File("D:\\");

        for(File x :File.listRoots()){

            System.out.println(x);

        }

        list(file2);

    }

    public static void list(File f) {

        if (f.isDirectory()) {

            File[] temp = f.listFiles();

            //因为磁盘下有些系统目录无法访问,故需要加上以下判断

            if(temp!=null){

                for (File x : temp) {

                    list(x);

                }

            }

        } else {

            System.out.println(f);

        }

    }

}

实例4:列出D盘下文件名包含java的所有的文件

package wiki.jjcc.test.file;

 

import java.io.File;

 

public class FileTest4 {

    public static void main(String[] args) {

        File file2 = new File("D:\\");

        list(file2,"java");

    }

    public static void list(File f,String keyWord) {

        if (f.isDirectory()) {

            File[] temp = f.listFiles();

            //因为磁盘下有些系统目录无法访问,故需要加上以下判断

            if(temp!=null){

                for (File x : temp) {

                    list(x,keyWord);

                }

            }

        } else {

            if(f.getName().contains(keyWord)){

                System.out.println(f);

            }

        }

    }

}

IO:File类(java.io.File)的更多相关文章

  1. Java入门之File类和IO流

    1.File类 java.io.File 类是文件和目录路径名的抽象表示,主要用于文件和目录的创建.查找和删除等操作 . 构造方法: public File(String pathname) :通过将 ...

  2. Java File类与IO流

    File 类 java.io.File 文件和目录路径名的抽象表示形式, 对文件或目录进行操作 构造方法: File(File parent, String child) : 根据 parent 抽象 ...

  3. File类与IO流

    一.File类与IO流 数组.集合等内容都是把数据放在内存里面,一旦关机或者断电,数据就会立刻从内存里面消失.而IO主要讲文件的传输(输入和输出),把内存里面的数据持久化到硬盘上,如.txt .avi ...

  4. Java自学第10期——File类与IO流(输入输出流、处理流、转换流、缓冲流、Properties集合、打印流)

    1.IO简介 IO(输入输出)通过java.io包下的类和接口来支持,包下包括输入.输出两种IO流,每种输入输出流又可分为字符流和字节流两大类. 2.File类 File类是io包下与平台无关的文件和 ...

  5. file类和io流

    一.file类 file类是一个可以用其对象表示目录或文件的一个Java.io包中的类 import java.io.File; import java.io.IOException; public ...

  6. JavaSE复习(四)File类与IO流

    File类 构造方法 public File(String pathname) :通过将给定的路径名字符串转换为抽象路径名来创建新的 File实例. public File(String parent ...

  7. JavaSE学习笔记(14)---File类和IO流(字节流和字符流)

    JavaSE学习笔记(14)---File类和IO流(字节流和字符流) File类 概述 java.io.File 类是文件和目录路径名的抽象表示,主要用于文件和目录的创建.查找和删除等操作. 构造方 ...

  8. 01 语言基础+高级:1-8 File类与IO流_day10【缓冲流、转换流、序列化流】

    day10[缓冲流.转换流.序列化流] 主要内容 缓冲流 转换流 序列化流 打印流 教学目标 能够使用字节缓冲流读取数据到程序 能够使用字节缓冲流写出数据到文件 能够明确字符缓冲流的作用和基本用法 能 ...

  9. 01 语言基础+高级:1-8 File类与IO流_day09【字节流、字符流】

    day09[字节流.字符流] 主要内容 IO流 字节流 字符流 异常处理 Properties 教学目标 能够说出IO流的分类和功能 能够使用字节输出流写出数据到文件 能够使用字节输入流读取数据到程序 ...

  10. 01 语言基础+高级:1-8 File类与IO流_day08【 File类、递归】

    day08[File类.递归] 主要内容 File类 递归 教学目标 能够说出File对象的创建方式 能够说出File类获取名称的方法名称 能够说出File类获取绝对路径的方法名称 能够说出File类 ...

随机推荐

  1. 如何让UIView中的Button点击之后跳转到另一个ViewController上去,ViewController上也有一个按钮 可以返回

    第一种方法:如果使用导航第一个按钮方法:[self.navigationController pushViewController:secondVC animated:YES];第二个按钮方法:[se ...

  2. 关于mongoldb 启动时显示 add already in use

    1 .不要在国内网上查找 浪费时间 2. stack over flow 是个不错的选择 进入正题. 终端输入: ps wuax | grep mongo 会看到: 随后:kill 447

  3. Objective-C如何对内存管理的?

    Objective-C的内存管理主要有三种方式ARC(自动内存计数).手动内存计数.内存池. 1. (Garbage Collection)自动内存计数:这种方式和java类似,在你的程序的执行过程中 ...

  4. Material Design使用记录

    出现过的问题记录: 1.Crash on Android 6.0 in RippleView.draw() 解决方法: This has very simple solution. Just down ...

  5. jquery点赞和取消点赞插件

    <script> /* @author:Romey * 动态点赞 * 此效果包含css3,部分浏览器不兼容(如:IE10以下的版本) */ $(function(){ $("#p ...

  6. 关于反射率(reflectance)

    首先,BRDF的内容因为见的多,用的多,所以比较容易理解.但是由BRDF引申出来的反射率,跟BRDF比不太常见,有些东西反而不易理解.尤其是组里的某大牛都不甚清楚(说明这个问题不太容易或者太过冷门), ...

  7. 操作系统学习笔记(五)--CPU调度

    由于第四章线程的介绍没有上传视频,故之后看书来补. 最近开始学习操作系统原理这门课程,特将学习笔记整理成技术博客的形式发表,希望能给大家的操作系统学习带来帮助.同时盼望大家能对文章评论,大家一起多多交 ...

  8. Caused by: java.lang.NoClassDefFoundError:

    tomcat启动不了 报错信息头如下: Caused by: java.lang.NoClassDefFoundError: at java.lang.Class.getDeclaredMethods ...

  9. 第六周——分析Linux内核创建一个新进程的过程

    "万子恵 + 原创作品转载请注明出处 + <Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 &q ...

  10. Java高级规范之三

    三十一.如果变量名要加注释,说明命名不是很准确. 不规范示例:暂无 规范实例:暂无 解析:暂无 三十二.任何类字段除非必要,否则都要私有化 不规范示例: public class Person{ St ...