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. Nginx 1.10.2 发布,高性能 Web 服务器

    Nginx 1.10.2 发布了.Nginx(发音同 engine x)是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器 更新内容: Changes with n ...

  2. ReactJS实现的通用分页组件

    大家多少都自己写过各种版本的分页工具条吧,像纯服务版的,纯jsWeb板的,Angular版的,因为这个基础得不能再基础的功能太多地方都会用到,下面我给出以个用ReactJS实现的版本,首先上图看下效果 ...

  3. Java和eclipse常用操作

    eclipse: ctrl+F10 显示行号 ctrl+shift+F 自动对齐 ctrl+/ 注释 java: jar包: Manifest-Version - 指定清单文件的版本号 Main-Cl ...

  4. 关于ASPXGridview的双击事件弹出 【转】

    在网上找了好长时间,关于ASPXGridview的双击事件弹出ASPxPopupControl,也没有找到适合自己的代码,这里将自己编写出来的代码与大家分享一下 希望我的代码能够对你有所帮助. 直接上 ...

  5. 学习SVG系列(3):SVG Stroke属性

    SVG stroke 属性 1.stroke 2.stroke-width 3.stroke-linecap 4.stroke-dasharray 5.stroke-opacity 6.stroke- ...

  6. 【转】Thread.isBackground

    C#中,Thread类有一个IsBackground 的属性.MSDN上对它的解释是:获取或设置一个值,该值指示某个线程是否为后台线程.个人感觉这样的解释等于没有解释. .Net中的线程,可以分为后台 ...

  7. javascript之小积累-获取url传参的值

    在项目中经常遇到两个页面传值的情况,我采取的方案是通过url后面加参数,也就是get方式传值. 这个方式的优点是:传值.获取很方便. 缺点是:1. 把参数都暴露在浏览器中了,一些敏感信息不建议这样传: ...

  8. string.empty和null的区别

    关于String.Empty和Null的问题是这样的,这两个都是表示空字符串,其中有一个重点是string str1= String.Empty和 string str2=null 的区别,这样定义后 ...

  9. android view:手势

    一直认为android手势识别很是神奇,我们不分析复杂的手势,仅仅是针对上一次的基本事件的手势处理,分析GestureDetector的源码,来看一下到底手势事件是如何定义的. GestureDete ...

  10. Mysql修改日期,时间不变的做法

    UPDATE tra_bargainorder SET EndParkingTime = ADDTIME (CURDATE() + INTERVAL 0 HOUR,TIME(EndParkingTim ...