zoukankan      html  css  js  c++  java
  • 5-8File文件操作类

    File文件操作类

    构造方法:

    File​(File parent, String child)

    File从父抽象路径名和子路径名字符串创建新实例。

    File​(String pathname)

    File通过将给定的路径名​​字符串转换为抽象路径名来创建新实例。

    File​(String parent, String child)

    File根据父路径名字符串和子路径名字符串创建新实例。

    File​(URI uri)

    File通过将给定file:URI转换为抽象路径名来创建新实例 。

    基本方法:https://docs.oracle.com/javase/9/docs/api/java/io/File.html

    修饰符和类型

    方法

    描述

    boolean

    canExecute​()

    测试应用程序是否可以执行此抽象路径名表示的文件。

    boolean

    canRead​()

    测试应用程序是否可以读取此抽象路径名表示的文件。

    boolean

    canWrite​()

    测试应用程序是否可以修改此抽象路径名表示的文件。

    int

    compareTo​(File pathname)

    从字典上比较两个抽象路径名。

    boolean

    createNewFile​()

    当且仅当具有该抽象路径名的文件尚不存在时,以原子方式创建一个新的空文件。

    static File

    createTempFile​(String prefix, String suffix)

    在默认的临时文件目录中创建一个空文件,使用给定的前缀和后缀生成其名称。

    static File

    createTempFile​(String prefix, String suffix, File directory)

    使用给定的前缀和后缀字符串在指定目录中创建一个新的空文件,以生成其名称。

    boolean

    delete​()

    删除此抽象路径名表示的文件或目录。

    void

    deleteOnExit​()

    请求在虚拟机终止时删除此抽象路径名表示的文件或目录。

    boolean

    equals​(Object obj)

    测试此抽象路径名是否与给定对象相等。

    boolean

    exists​()

    测试此抽象路径名表示的文件或目录是否存在。

    File

    getAbsoluteFile​()

    返回此抽象路径名的绝对形式。

    String

    getAbsolutePath​()

    返回此抽象路径名的绝对路径名字符串。

    File

    getCanonicalFile​()

    返回此抽象路径名的规范形式。

    String

    getCanonicalPath​()

    返回此抽象路径名的规范路径名字符串。

    long

    getFreeSpace​()

    返回此抽象路径名所命名的分区中未分配的字节数。

    String

    getName​()

    返回此抽象路径名表示的文件或目录的名称。

    String

    getParent​()

    返回此抽象路径名的父级的路径名字符串,或者null如果此路径名未命名父目录,则返回该字符串 。

    File

    getParentFile​()

    返回此抽象路径名的父级的抽象路径名,或者null如果此路径名未命名父目录,则返回该路径名。

    String

    getPath​()

    将此抽象路径名转换为路径名字符串。

    long

    getTotalSpace​()

    返回此抽象路径名命名的分区的大小。

    long

    getUsableSpace​()

    返回此抽象路径名所命名的分区上该虚拟机可用的字节数。

    int

    hashCode​()

    为此抽象路径名计算哈希码。

    boolean

    isAbsolute​()

    测试此抽象路径名是否为绝对路径。

    boolean

    isDirectory​()

    测试此抽象路径名表示的文件是否为目录。

    boolean

    isFile​()

    测试此抽象路径名表示的文件是否为普通文件。

    boolean

    isHidden​()

    测试以此抽象路径名命名的文件是否为隐藏文件。

    long

    lastModified​()

    返回此抽象路径名表示的文件的最后修改时间。

    long

    length​()

    返回此抽象路径名表示的文件的长度。

    String[]

    list​()

    返回一个字符串数组,命名该抽象路径名表示的目录中的文件和目录。

    String[]

    list​(FilenameFilter filter)

    返回一个字符串数组,该字符串数组命名此抽象路径名表示的满足指定过滤器的目录中的文件和目录。

    File[]

    listFiles​()

    返回一个抽象路径名数组,该数组表示此抽象路径名表示的目录中的文件。

    File[]

    listFiles​(FileFilter filter)

    返回一个抽象路径名数组,该数组表示该抽象路径名表示的满足指定过滤器的目录中的文件和目录。

    File[]

    listFiles​(FilenameFilter filter)

    返回一个抽象路径名数组,该数组表示该抽象路径名表示的满足指定过滤器的目录中的文件和目录。

    static File[]

    listRoots​()

    列出可用的文件系统根目录。

    boolean

    mkdir​()

    创建以此抽象路径名命名的目录。

    boolean

    mkdirs​()

    创建以此抽象路径名命名的目录,包括任何必需但不存在的父目录。

    boolean

    renameTo​(File dest)

    重命名此抽象路径名表示的文件。

    boolean

    setExecutable​(boolean executable)

    一种方便的方法,用于为此抽象路径名设置所有者的执行许可权。

    boolean

    setExecutable​(boolean executable, boolean ownerOnly)

    设置此抽象路径名的所有者或所有人的执行权限。

    boolean

    setLastModified​(long time)

    设置此抽象路径名所命名的文件或目录的最后修改时间。

    boolean

    setReadable​(boolean readable)

    一种方便的方法,用于为此抽象路径名设置所有者的读取许可权。

    boolean

    setReadable​(boolean readable, boolean ownerOnly)

    设置此抽象路径名的所有者或所有人的读取许可权。

    boolean

    setReadOnly​()

    标记以此抽象路径名命名的文件或目录,以便仅允许读取操作。

    boolean

    setWritable​(boolean writable)

    为该抽象路径名设置所有者的写许可权的便捷方法。

    boolean

    setWritable​(boolean writable, boolean ownerOnly)

    设置此抽象路径名的所有者或所有人的写许可权。

    Path

    toPath​()

    返回java.nio.file.Path从此抽象路径构造的对象。

    String

    toString​()

    返回此抽象路径名的路径名字符串。

    URI

    toURI​()

    构造一个file:表示此抽象路径名的URI。

    URL

    toURL​()

    不推荐使用。 

    此方法不会自动转义URL中非法的字符。建议新代码先通过toURI方法将抽象路径名转换为URI,然后再通过方法将URI转换为URL,从而将抽象路径名转换为URL URI.toURL

    一个文件创建的标准形式:

    1.判断父路径是否存在,不存在要创建,存在写文件

    package FIle文件操作;
    
    import java.io.File;
    import java.io.IOException;
    import java.util.Arrays;
    
    public class File基本操作 {
    
        public static void main(String[] args) throws Exception {
            // TODO 自动生成的方法存根b
            
            File fl=new File("/Users/jacky/Desktop/Java深度学习");
            String str = "/Users/jacky/Desktop/Java深度学习";
            
            
            listDir1(fl);
        }    
            public static void listDir1(File file) {
                if(file.isDirectory()) {
                    File data[] = file.listFiles();
                    for(int x=0;x<data.length;x++) {
                        listDir1(data[x]);
                        System.out.println(data[x]);
                        
                    }
                    
                }else {
                    System.out.println(file);
                }
                
                
                
                 
                
            }
                
                
                
                
            
            
            
            
            
            
    
            
            
            
        
    }
    View Code

    批量修改文件名称:

    package FIle文件操作;
    
    import java.io.File;
    
    public class File1 {
    
        public static void main(String[] args) {
            // TODO 自动生成的方法存根
            
            
            File fl=new File("/Users/jacky/Desktop/Java深度学习/File");
            String str = "/Users/jacky/Desktop/Java深度学习";
            long start = System.currentTimeMillis();
            getRnamet(fl);
            long end = System.currentTimeMillis();
            System.out.println("本次操作花费的时间:"+(end-start));
            
            
        }
        public static void getRnamet(File file) {
            if(file.isDirectory()) {
                File data[]=file.listFiles();
                if(data!=null) {
                for(int x=0;x<data.length;x++) {
                    System.out.println(data[x]);
                    getRnamet(data[x]);
                
                }
                }
                
            }else {
                if(file.isFile()) {//如果是个文件
                    String filename=null;
                    if(file.getName().contains(".")) {
                        filename = file.getName().substring(0,file.getName().lastIndexOf("."))+".txt";
                        
                    }    
                        
                    
                        else {
                        filename=file.getName()+".txt";
                        
                    }
                    System.out.println(file.getParent());
                    File newFile=new File(file.getParentFile(),filename);
                    file.renameTo(newFile);
                    System.out.println(filename);
                }
            }
        }
        
        
        
        
        
    
    }
    View Code
  • 相关阅读:
    发布一个扩展Repeater的模板控件,带自动分页功能
    webservice 测试窗体只能用于来自本地计算机的请求
    FCKeditor编辑器中设置默认文本行高和字体大小
    程序员的个人性格
    程序设计模式的有趣解释-追MM
    集锦一
    UML简介(原创)
    一位IT从业人员的心路历程
    一个初级测试工程师的工作总结
    "与熊共舞"(转载)
  • 原文地址:https://www.cnblogs.com/yu0824/p/12852456.html
Copyright © 2011-2022 走看看