`

对文件的一系列操作

阅读更多

 

    Java中对文件的读写操作可以通过输入输出流来实现,但对于文件目录、属性以及管理等信息Java提供了一个专门的类来实现File

 

    1File类的成员变量  FileStatic.java

       static String pathSeparator   系统相关的路径分隔字符串,包含一个字符。

       static char pathSeparatorChar  系统相关的路径分隔符,用于分隔多个路径。

       static String separator    系统相关的文件分隔字符串。

       static char separatorChar   系统相关的文件分隔符。

 

    2、构造方法  FileConstructor.java

    创建一个File对象,只是在内存中生成一个File类的实例,并不会在某个物理路径下创建一个文件或目录。

       File (String pathname)  根据路径名创建一个File对象。

       File (File parent, String child)  在给定File对象下创建一个File对象。

       File (String parent, String child)  根据指定路径下创建一个File对象。

       File (URL url)  根据一个URL对象创建一个File对象。

 

    3、常用方法

       boolean canRead()  判断File对象对应的路径是否可读。

       boolean canWrite()  判断File对象对应的路径是否可写。

       int compareTo(File pathname)  比较两个File对象,不是比较其对应的文件。

       boolean equals(Object obj)  判断两个File对象是否相等。

       boolean exists()  判断File对象对应的路径是否存在。

       String getAbsolutePath()  获取File对象对应路径的绝对路径。

       String getParent()  获取File对象对应路径的目录。

       String getPath()  获取File对象对应的路径。

       boolean isAbsolute()  判断File对象对应的路径是否为绝对路径。

       boolean mkdir()  获得File对象对应的目录。

       boolean mkdirs()  获得File对象对应路径下的所有目录。

       String toString()  返回File对象对应路径的字符串。

 

    4、查询/更改文件属性  FileProperty.java

       String getName()  获取File对象对应路径的文件名。

       boolean isDirectory()  判断File对象对应的路径是否为目录。

       boolean isFile()  判断File对象对应的路径是否为文件。

       boolean isHidden()  判断File对象对应的文件是否为隐藏属性。

       long length()  获得File对象对应文件的长度。

       long lastModified()  获得File对象对应文件的最近修改时间。

       boolean renameTo(File dest)  更改File对象对应文件的文件名。

       boolean setReadOnly()  设置File对象对应文件为只读。

 

    5、创建文件  CreateFile.java

    1)通过创建一个文件输出流来创建一个新文件。这种方式不能创建目录,并且如果要创建的文件已存在会新建一个文件覆盖原文件。

     FileOutrputStream file = new FileOutputStream(filename);

    2)通过File类提供的方法来创建文件,必须先创建一个File对象,然后调用其方法(createNewFile())来创建文件。

 

    6、获得文件列表

通过File类的list()listFiles()方法获得某个文件夹的文件列表。有以下几种形式:

   String[] list();  先判断File对象是否是一个目录

   File[] listFiles();    FileList.java

       File[] listFiles(FilenameFilter filter);   FileList1.java

       File[] listFiles(FileFilter filter);  FileList2.java

其中FileFilterFilenameFilter都是接口,filter为相应的过滤器。声明某个类,实现过滤器接口,便可以通过过滤条件来列出所有符合的文件。

FilenameFilter定义了一个方法:提供给list()使用,FilenameFilter使文件作为一个目录和一个文件名被过滤。

    boolean accept(File directory, String filename);

FileFilter定义了一个方法:FileFilter使文件作为一个File对象被过滤。

    boolean accept(File path)

一个简单的文件过滤是已知文件扩展名,你可以使用FilenameFilter 接口,但它却难以知道这个文件名到底是一个文件还是一个目录。为了去解决这个问题,你需要去做一个文件对象,与其自己去做,不如使用FileFilter接口。

 

    7、删除文件

通过File类的delete()方法即可。如果File对象所对应的路径名是一个目录,只有当目录是一个空目录时才能被删除。

boolean delete()  DeleteFile.java

 

    8、临时文件

    Java2File类中提供了对临时文件的支持,程序可以根据需要在操作系统提供的临时文件创建自己的临时文件,也可以在特定的目录下创建,如果需要,还能在Java虚拟机退出时自动删除这个文件(调用File类的deleteOnExit()方法)。

    创建一个临时文件,可以用File类的createTempFile()方法来创建,该方法是一个静态方法,有两种参数形式:  CreateTempFile.java

    File createTempFile(String prefix, String suffix);

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

    其中prefix为文件名的前缀,suffix为文件名的后缀,directory为创建的临时文件所在的目录,如果未指明,则为系统默认的临时文件目录(如:c:\winnt\temp)。为了避免文件命名重复,Java为临时文件自动命名,在前缀与后缀之间加上一个数字。

分享到:
评论

相关推荐

    操作系统c语言模拟文件管理系统

    在这个模拟系统中,用户首先需要进行登录,然后可以执行一系列文件管理操作。 1. **文件创建**:在C语言中,我们可以使用`fopen()`函数来创建一个新文件。如果文件已存在,`fopen()`可以打开文件进行追加或覆盖写入...

    操作系统实验4_文件系统

    在这个实验中,文件系统通过一系列命令(如create、open、read)与用户交互,而I/O系统则负责隐藏磁盘的实际物理结构,仅以逻辑块的形式提供给文件系统。 文件系统将磁盘视为一个连续编号的逻辑块序列,从0到L-1。...

    java操作mongodb存储文件实例

    将一系列图片文件存储到MongoDB中 java操作mongodb存储文件

    QT实现HEX文件操作

    HEX文件包含一系列记录,每个记录由起始字符、地址字段、数据字段和校验和组成。地址字段指示数据在内存中的位置,数据字段则包含了实际的字节数据。解析HEX文件时,我们需要识别这些记录并正确处理它们。 在QT中,...

    汇编语言磁盘文件操作

    DOS系统调用9号功能可以用来显示字符串,而文件操作则涉及一系列的调用,如创建、打开、关闭、读取、写入和移动文件指针。 创建文件的功能调用是3CH,需要提供文件名(DS:DX指向的ASCIIZ字符串)和文件属性(CX)。...

    基于STM32-RTX-FATFS-U盘操作实现.ini文件读写操作

    6. **文件操作API**:Fatfs提供了一系列文件操作的API,如f_open()打开文件,f_read()读取文件,f_write()写入文件,f_close()关闭文件等。这些函数在STM32上通过RTX调度执行,实现对U盘上INI文件的读写操作。 7. *...

    修复解决补丁文件“关于安装XXX前,必须重新启动系统,以便使一些先前的文件更新操作完成.(这些操作的日程已有其他安装或卸载操作安排)”

    BAT文件是一种批处理脚本,它可以包含一系列命令行指令,用来自动执行一系列操作。在这种情况下,它可能包含了检查系统状态、执行必要的文件更新和重新启动系统的命令。使用该文件时,用户只需运行它,按照提示操作...

    C++ 操作dbf文件(深入剖析dbf文件)

    DBF文件由一系列记录组成,每个记录包含多个字段。每个字段都有自己的数据类型,如字符、数字或日期。文件头包含关于字段的信息,如字段名、数据类型和长度。此外,每个记录还有一条位图,用于标记该记录是否已删除...

    操作系统 文件管理实验报告

    在操作系统中,文件管理是一个重要的子模块,它涉及到文件的创建、删除、读取、写入以及存储空间的分配和回收等操作。本实验报告将深入探讨操作系统中的文件管理机制,并通过具体的实验代码、可执行程序和实验分析,...

    课程设计—文件管理系统设计

    - **文件操作命令**:提供一系列文件操作命令,例如创建、删除、读取、写入、复制等。 ##### 2. 主要技术点 - **用户管理**:实现用户身份验证,确保不同用户之间的数据隔离。 - **文件操作命令**:开发命令处理...

    文件分割软件,可分割bin文件,doc文件,text文件,

    拆分过程可能会创建一系列连续编号的文件,以便于之后的合并操作。 "说明.txt"文件很可能包含了软件的使用指南和注意事项。通常,这样的文本文件会解释如何启动软件,输入参数的含义,以及如何执行文件的合并操作。...

    操作系统课程设计模拟文件系统Java

    为了测试和验证这个模拟文件系统的正确性,我们可以编写一系列的单元测试,覆盖各种操作场景,如创建大小不一的文件、创建深度不同的目录结构、进行文件的复制和移动等。这将有助于确保我们的系统在实际使用中能够...

    文件系统C++实现

    C++标准库提供了一系列的文件操作函数,如fstream库,用于读写文件,以及dirent库,用于处理目录操作。 在这个模拟器中,文件被组织成树形结构,这是一种典型的文件系统布局。在树形结构中,每个文件或目录都是一个...

    VS2010/MFC 读写excel文件 操作类

    如果需要写入的是一系列数据,可能需要处理范围、行和列的概念,这可以通过`Range->Resize`方法来实现。 4. **关闭Excel文件**:在完成读写操作后,确保正确关闭工作簿和Excel应用程序是非常重要的。我们需要调用`...

    操作系统课程设计----模拟unix文件系统

    在V6文件系统中,文件被视为一系列的块,每个块通常为512字节。文件由一个i节点(inode)描述,包含了文件的元数据,如文件大小、创建时间、修改时间、访问权限以及指向数据块的指针。 **二、文件系统的结构** 1. *...

    用c++写的FAT文件系统

    文件由一系列连续或非连续的簇组成,FAT负责记录这些簇的链接关系。文件的创建、读取、修改和删除等操作,都基于对FAT的管理和更新。 在这个C++实现的FAT文件系统中,可能包括以下几个关键模块: 1. **磁盘模拟**...

    Qt的Excel操作(添加了新建Excel文件的功能)

    此外,还可以通过`Range`属性操作一系列连续的单元格,进行数据填充或格式设置。 6. **保存文件**: 完成对Excel文件的编辑后,需要调用`SaveAs`方法来保存文件,提供文件路径和文件名即可。如果希望以不同的格式...

    VC之PDF文件操作

    例如,Adobe的PDF SDK提供了一系列API,可以用于创建、修改和显示PDF文档。使用这些API,我们可以在程序中创建一个新的PDF文档,添加页面,插入文本、图像或者图形元素。例如: ```cpp #include "adobesdk/...

    数据库操作dll文件

    数据库操作DLL文件是编程中常用的一种组件,它包含了一系列预编译的函数和类库,用于简化和优化对数据库的访问。在本场景中,"Lib.Common.dll"、"Lib.Common.pdb" 和 "Lib.Common.dll.refresh" 是三个重要的文件。 ...

    java通过文件头内容判断文件类型

    接下来,我们需要创建一个映射表或者一系列的条件判断,用于比较读取到的文件头字节与已知文件类型的头信息。这可以通过switch语句或者HashMap实现。例如: ```java Map, String> fileHeaders = new HashMap(); ...

Global site tag (gtag.js) - Google Analytics