body, table{font-family: 微软雅黑}
table{border-collapse: collapse; border: solid gray; border-width: 2px 0 2px 0;}
th{border: 1px solid gray; padding: 4px; background-color: #DDD;}
td{border: 1px solid gray; padding: 4px;}
tr:nth-child(2n){background-color: #f8f8f8;}
div, p, blockquote{line-height: 150%}

File类成员方法

创建功能
 █ public boolean createNewFile();    //true 表示新创建成功,false 表示文件已经存在,报 IO异常 表示路劲不存在。
                                                         //创建一个文件的时候,如果该文件的父目录不存在,系统不会帮你创建,而是需要你自己先创建父目录
                File file=new File("D:\\temp\\1.txt");         //创建指向文件的对象实例
                File tempFold=new File("D:\\temp");
                try {
                        boolean result=tempFold.mkdir();        //用实例创建文件夹
                        System.out.println("mkdir(): "+result);
                        boolean flag=file.createNewFile();       //创建文件
                        System.out.println("createNewFile(): "+flag);
                } catch (IOException e) {
                        e.printStackTrace();
                }
                File path=new File("D:\\Demo\\java\\File");    //多级目录,包含三个文件夹
                //boolean pathCreat=path.mkdirs();    //如果上面路径上有两个或以上的文件夹不存在,他会都创建,返回true
                boolean pathCreat=path.mkdir();        //如果只有上面最后一个File 不存在,他会创建并返回True,否则False
                System.out.println("mkdirs(): "+pathCreat);
                                                             
 █ public boolean mkdir();                 //创建文件夹,仅仅支持创建单级目录
 █ public boolean mkdirs();               //支持创建多级目录,文件夹里面还包含其他文件夹;如果父目录不存在,则会分别创建出来
删除功能
 █ public boolean delete();               //返回 true 表示成功删除。永久删除,不进入回收站;文件删除抛异常,文件夹不会。
                File newFile=new File("1.txt");   //会在资源管理器列表下创建文件
                File newFold=new File("myfold");
                boolean ret;
                try {
                        ret = newFile.createNewFile();
                        ret = newFold.mkdir();
                        System.out.println("creatNewFile(): "+ret);
                        ret = newFile.delete();
                } catch (IOException e) {
                        e.printStackTrace();
                }
                newFold.delete();   //文件夹删除不会抛出异常,不用try catch 包围。

重命名功能
 █ public boolean renameTo(File dest);  //相当于剪切,把一个目录下的文件剪切到目的目录下,并以目的目录下的新名字命名。
                File newFile = new File("1.txt");    //1.txt必须事先存在,否则后面的 renameTo() 返回false
                File newFile2 = new File("D:\\Demo\\java\\File\\2.txt");
                //相当于剪切,把1.txt剪切到D:\Demo\java\File\目录下,并改名为2.txt;如果newFile2里面要改的名也是1.txt,返回false,更改失败
                ret = newFile.renameTo(newFile2);
                System.out.println("renameFile(): "+ret);

判断功能
 █ public boolean isFile();                       █ public boolean isDirectory();                        █ public boolean exists();  
 █ public boolean canRead();                 █ public boolean canWrite();                           █ public boolean isHidden();  

                boolean ret;
                File newFile = new File("2.txt");
                File newFold = new File("2_txt");
                try {
                        newFold.mkdir();
                        newFile.createNewFile();
                        ret = newFold.isFile();
                        System.out.println("newFold.isFile(): "+ret);
                        ret = newFold.isDirectory();
                        System.out.println("newFold.isDirectory(): "+ret);
                        ret = newFile.isFile();
                        System.out.println("newFile.isFile(): "+ret);
                        ret = newFile.isDirectory();
                        System.out.println("newFile.isDirectory(): "+ret);       
                } catch (IOException e) {
                        e.printStackTrace();
                }
System.out.println("newFold.exists(): "+newFold.exists());
System.out.println("newFile.exists(): "+newFile.exists());
System.out.println("newFold.canRead(): "+newFold.canRead());
System.out.println("newFile.canRead(): "+newFile.canRead());
System.out.println("newFile.isHidden(): "+newFile.isHidden());     //false 没有隐藏
基本获取功能
█ public File getAbsoluteFile();                 █ Public File getAbsolutePath();                   █ public String getPath();
█ public String getName();                        █ public long length();                                   █ public long lastModified();
String path = newFile.getAbsolutePath();      //绝对路径+文件名
System.out.println("newFile.getAbsolutePath(): "+path);
File path_file = newFile.getAbsoluteFile();     //返回文件型的路径
String pth = path_file.getAbsolutePath()
System.out.println("path_file.getAbsolutePath(): "+pth);
String path2 = newFile.getPath();
System.out.println("newFile.getPath(): "+path2);   //相对路径,对于文件,获取文件名 2.txt
                                                                           //对于文件夹,返回新建该文件夹时传入的相对路径
File newFold2 = new File("2_txt\\test");
File newFold3 = new File("D:\\2_txt\\test");
String path3 = newFold.getPath();
String path4 = newFold2.getPath();
String path5 = newFold3.getPath();
System.out.println("newFold.getPath(): "+path3);
System.out.println("newFold.getPath(): "+path4);     //2_txt ;
System.out.println("newFold.getPath(): "+path5);
System.out.println("newFile.length(): "+newFile.length());  //0;文件里我没有放东西
long time = newFile.lastModified();      //1970-01-01 0时到现在经过了多少秒
System.out.println("newFile.lastModified(): "+time);
Date date = new Date(time);     //date = Tue Mar 28 13:17:41 CST 2017
System.out.println("newFile.lastModified(): "+date.toLocaleString());  //函数划横线就是过时了
System.out.println("newFile.lastModified(): "+date.toString()); 
 //java 1.7 toString() 会显示2017-03-28   

高级获取功能
█ public String[] list();              
█ public File[] listFiles();          
//list 获取某个目录下面的所有文件和文件夹的名字,生成一个名字数组返回;
File path = new File("D:\\");
String[] list = path.list();
for(int i = 0;i<list.length;++i){     //数组长度,用length属性,其他的用length()方法
       System.out.println("path.list(): "+list[i]);
}
//listFiles 获取某个目录下面的所有文件和文件夹的file实例,生成一个文件数组返回;
File[] listFiles = path.listFiles();
for(int i = 0;i<listFiles.length;++i){
       System.out.println("path.listFiles(): "+listFiles[i]+" (是否为文件): "+listFiles[i].isFile());
}

/**     
       * 批量修改文件名称
         * 假设你某天跟朋友出去玩,使用某数码相机拍摄了一些照片。但是当你回来的时候你发现所有的照片都是如下命名的。
         * P1020335.JPG
         * P1020336.JPG
         * P1020337.JPG
         * P1020338.JPG
         * P1020339.JPG
         * 这些文件名实际上是自动生成的,对你来说不方便看。
         * 你现在希望将这些照片都改成“2015-4-15-i”        i表示第几张照片
         * 如
         * 2015-4-15-1
         * 2015-4-15-2
         * 2015-4-15-3
         * 请设计一个程序实现自动修改。
*/
public static void main(String[] args) {
                for(int i = 0;i<10;++i){
                        File file = new File("D:\\test\\12016001233"+i+".jpg");
                        try {
                                boolean ret = file.createNewFile();      //新建要改写的文件
                        } catch (IOException e) {
                                e.printStackTrace();
                        }
                }
                File file2 = new File("D:\\test");
                File[] files = file2.listFiles();
                System.out.println(files.length);
                for(int j = 0;j<files.length;++j){
                        File file3 = new File("D:\\test\\2015-4-15-"+(j+1)+".JPG");    //最终要改成的文件名
                        files[j].renameTo(file3);    //更改;第一次运行正确,多次运行失败,因为要改的名字文件夹中已经存在;
                }
        }

Java——File类成员方法的更多相关文章

  1. Java File类总结和FileUtils类

    Java File类总结和FileUtils类 文件存在和类型判断 创建出File类的对象并不代表该路径下有此文件或目录. 用public boolean exists()可以判断文件是否存在. Fi ...

  2. Java File 类的使用方法详解

    Java File类的功能非常强大,利用Java基本上可以对文件进行所有的操作.本文将对Java File文件操作类进行详细地分析,并将File类中的常用方法进行简单介绍,有需要的Java开发者可以看 ...

  3. Java File 类的使用方法详解(转)

    转自:http://www.codeceo.com/article/java-file-class.html Java File类的功能非常强大,利用Java基本上可以对文件进行所有的操作.本文将对J ...

  4. Java File类 mkdir 不能创建多层目录

    File f = new File("/home/jp/Upload"); if ((!f.exists()) || (!f.isDirectory())) {boolean re ...

  5. Java File类基础解析 1

    Java File类基础解析 1 File类的构造方法 public File(String pathname) :通过给定的路径名字符转换为抽象路径名来创建新的File实例 String path ...

  6. Java File类基本操作

    我们可以利用Java.io.File类对文件进行操作,基本操作如下: 1)创建文件: public boolean createNewFile() throws IOException 2)删除文件: ...

  7. JAVA File类 分析(三)

    前面两篇与大家一起研究了unix下的文件系统,本篇将和大家一起分析 文件的属性和文件夹. ok,废话不说,先来段代码 #include <stdio.h> #include <sys ...

  8. Java——File类概述

    body, table{font-family: 微软雅黑} table{border-collapse: collapse; border: solid gray; border-width: 2p ...

  9. java File类的基本使用

    package com.soar.file; import java.io.File; import java.io.IOException; public class Demo2_FileMetho ...

随机推荐

  1. linux下精确替换某个字符串

    1.linux下精确替换某个字符串 sed -i 's/\<old\>/new/g' filename.txt 2.举例: 2.1有个文件名为filename.txt,内容如下: newd ...

  2. 基于bootstrap的后台管理系统

    ace metro'nic 基于bootstrap的后台admin system ace [eis], 扑克牌中的A 表示 非常棒, 杰出, 顶好的... gallery: 画廊, 走廊; 在网页中常 ...

  3. SPOJ - POLYNOM Polynomial(数论乱搞)题解

    题意 :给你n个数,问你是否存在一个多项式(最多三次方)满足f(i)= xi. 思路:讲一个神奇的思路: x3 - (x - 1)3 = 3x2 - 3x + 1 x2 - (x - 1)2 = 2x ...

  4. redis安装使用配置

    一.安装前的准备 下载redis http://redis.io/download https://github.com/mythz/redis-windows 下载Windows版客户端net版sd ...

  5. 安卓开发 Activity入门

    生命周期 Activity包含5种状态,涉及7种方法 1. 启动状态 2. 运行状态 *** 即使内存不足,Android先销毁栈底的Activity,来确保当前Activity正常运行 3. 暂停状 ...

  6. javaweb项目运行时生成的Servers项目作用

    在javaweb项目中,看到有一个Servers的项目,发现每新增一个项目,就会在Servers项目中新生成一些对应的项目文件. 如图所示: 每个项目都有对应的文件.文件的结构图如下: 解释一:Ser ...

  7. 【Android实验】 UI设计-ListView

    目录 实验目的 实验要求 实验内容 实现效果 实验代码 实验总结 实验目的 学习使用ListView 学习使用menu 实验要求 实现一个列表,其中显示班级学号姓名,提供添加功能,如需要删去某一项,长 ...

  8. 高精度N的阶乘-N!

    题目:输入一个正整数N(0<N<=30),求N! 代码: #include<stdlib.h> #include<cstdio> #include<strin ...

  9. miRNA几大常用的数据库

    1.miRbasehttp://www.mirbase.org/2.miRDBhttp://www.mirdb.org/miRDB/policy.html3.miRandahttp://www.mic ...

  10. 升级php7一些需要注意的地方

    1.升级过程涉及代码的主要处理的就是几个扩展(mysql.mssql .mcrypt.ereg)使用到的一些废弃函数(call_user_method.call_user_method_array等) ...