Java中对文件的读写操作可以通过输入输出流来实现,但对于文件目录、属性以及管理等信息Java提供了一个专门的类来实现File。
1、File类的成员变量
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
其中FileFilter和FilenameFilter都是接口,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、临时文件
Java2在File类中提供了对临时文件的支持,程序可以根据需要在操作系统提供的临时文件创建自己的临时文件,也可以在特定的目录下创建,如果需要,还能在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为临时文件自动命名,在前缀与后缀之间加上一个数字。
分享到:
相关推荐
在这个模拟系统中,用户首先需要进行登录,然后可以执行一系列文件管理操作。 1. **文件创建**:在C语言中,我们可以使用`fopen()`函数来创建一个新文件。如果文件已存在,`fopen()`可以打开文件进行追加或覆盖写入...
在这个实验中,文件系统通过一系列命令(如create、open、read)与用户交互,而I/O系统则负责隐藏磁盘的实际物理结构,仅以逻辑块的形式提供给文件系统。 文件系统将磁盘视为一个连续编号的逻辑块序列,从0到L-1。...
将一系列图片文件存储到MongoDB中 java操作mongodb存储文件
HEX文件包含一系列记录,每个记录由起始字符、地址字段、数据字段和校验和组成。地址字段指示数据在内存中的位置,数据字段则包含了实际的字节数据。解析HEX文件时,我们需要识别这些记录并正确处理它们。 在QT中,...
DOS系统调用9号功能可以用来显示字符串,而文件操作则涉及一系列的调用,如创建、打开、关闭、读取、写入和移动文件指针。 创建文件的功能调用是3CH,需要提供文件名(DS:DX指向的ASCIIZ字符串)和文件属性(CX)。...
6. **文件操作API**:Fatfs提供了一系列文件操作的API,如f_open()打开文件,f_read()读取文件,f_write()写入文件,f_close()关闭文件等。这些函数在STM32上通过RTX调度执行,实现对U盘上INI文件的读写操作。 7. *...
BAT文件是一种批处理脚本,它可以包含一系列命令行指令,用来自动执行一系列操作。在这种情况下,它可能包含了检查系统状态、执行必要的文件更新和重新启动系统的命令。使用该文件时,用户只需运行它,按照提示操作...
DBF文件由一系列记录组成,每个记录包含多个字段。每个字段都有自己的数据类型,如字符、数字或日期。文件头包含关于字段的信息,如字段名、数据类型和长度。此外,每个记录还有一条位图,用于标记该记录是否已删除...
在操作系统中,文件管理是一个重要的子模块,它涉及到文件的创建、删除、读取、写入以及存储空间的分配和回收等操作。本实验报告将深入探讨操作系统中的文件管理机制,并通过具体的实验代码、可执行程序和实验分析,...
- **文件操作命令**:提供一系列文件操作命令,例如创建、删除、读取、写入、复制等。 ##### 2. 主要技术点 - **用户管理**:实现用户身份验证,确保不同用户之间的数据隔离。 - **文件操作命令**:开发命令处理...
拆分过程可能会创建一系列连续编号的文件,以便于之后的合并操作。 "说明.txt"文件很可能包含了软件的使用指南和注意事项。通常,这样的文本文件会解释如何启动软件,输入参数的含义,以及如何执行文件的合并操作。...
为了测试和验证这个模拟文件系统的正确性,我们可以编写一系列的单元测试,覆盖各种操作场景,如创建大小不一的文件、创建深度不同的目录结构、进行文件的复制和移动等。这将有助于确保我们的系统在实际使用中能够...
C++标准库提供了一系列的文件操作函数,如fstream库,用于读写文件,以及dirent库,用于处理目录操作。 在这个模拟器中,文件被组织成树形结构,这是一种典型的文件系统布局。在树形结构中,每个文件或目录都是一个...
如果需要写入的是一系列数据,可能需要处理范围、行和列的概念,这可以通过`Range->Resize`方法来实现。 4. **关闭Excel文件**:在完成读写操作后,确保正确关闭工作簿和Excel应用程序是非常重要的。我们需要调用`...
在V6文件系统中,文件被视为一系列的块,每个块通常为512字节。文件由一个i节点(inode)描述,包含了文件的元数据,如文件大小、创建时间、修改时间、访问权限以及指向数据块的指针。 **二、文件系统的结构** 1. *...
文件由一系列连续或非连续的簇组成,FAT负责记录这些簇的链接关系。文件的创建、读取、修改和删除等操作,都基于对FAT的管理和更新。 在这个C++实现的FAT文件系统中,可能包括以下几个关键模块: 1. **磁盘模拟**...
此外,还可以通过`Range`属性操作一系列连续的单元格,进行数据填充或格式设置。 6. **保存文件**: 完成对Excel文件的编辑后,需要调用`SaveAs`方法来保存文件,提供文件路径和文件名即可。如果希望以不同的格式...
例如,Adobe的PDF SDK提供了一系列API,可以用于创建、修改和显示PDF文档。使用这些API,我们可以在程序中创建一个新的PDF文档,添加页面,插入文本、图像或者图形元素。例如: ```cpp #include "adobesdk/...
数据库操作DLL文件是编程中常用的一种组件,它包含了一系列预编译的函数和类库,用于简化和优化对数据库的访问。在本场景中,"Lib.Common.dll"、"Lib.Common.pdb" 和 "Lib.Common.dll.refresh" 是三个重要的文件。 ...
接下来,我们需要创建一个映射表或者一系列的条件判断,用于比较读取到的文件头字节与已知文件类型的头信息。这可以通过switch语句或者HashMap实现。例如: ```java Map, String> fileHeaders = new HashMap(); ...