java读写文件,Java操作文件
需积分: 0 178 浏览量
更新于2009-05-14
收藏 41KB DOC 举报
### Java读写文件详解
#### 文件的建立、检查与删除
在Java中,对文件进行基本的操作主要包括创建、检查以及删除。以下通过示例代码详细解释这些操作。
**创建文件**
利用`java.io.File`类可以创建一个新的文件。具体实现方式如下:
```java
String path = request.getRealPath(""); // 获取当前目录的绝对路径
File f = new File(path, "File.txt"); // 在指定路径下创建名为File.txt的文件
f.createNewFile(); // 创建文件
```
此段代码首先通过`request.getRealPath("")`获取当前项目的根目录路径,然后基于该路径创建一个名为`File.txt`的文件对象。调用`createNewFile()`方法时,如果指定路径下的文件不存在,则会创建一个新文件;若文件已存在,则会抛出异常。
**检查文件的存在性**
为了安全地创建文件,避免异常,可以通过`exists()`方法来检查文件是否已经存在。
```java
if (!f.exists()) {
f.createNewFile(); // 如果文件不存在,则创建
} else {
// 文件已存在
}
```
**删除文件**
若要删除一个文件,可以调用`delete()`方法:
```java
if (f.exists()) {
f.delete(); // 删除文件
} else {
// 文件不存在
}
```
上述代码首先检查文件是否存在,如果存在则删除。值得注意的是,`delete()`方法成功执行后并不意味着文件一定被删除了,因为某些情况下操作系统可能不允许立即删除文件。
#### 目录的建立、检查与删除
对于目录的操作,同样可以使用`java.io.File`类来实现。
**创建目录**
创建目录的方法与创建文件类似,只是需要调用不同的方法。
```java
String path = request.getRealPath(""); // 获取当前目录的绝对路径
path = path + "\\Sub"; // 指定要创建的子目录路径
File d = new File(path); // 基于路径创建目录对象
d.mkdir(); // 创建目录
```
这里使用`mkdir()`方法创建单个目录。如果要创建多级目录,可以使用`mkdirs()`方法。
**检查目录的存在性**
检查目录的存在性也十分简单:
```java
if (!d.exists()) {
d.mkdir(); // 如果目录不存在,则创建
} else {
// 目录已存在
}
```
**删除目录**
删除目录时需要注意,只有当目录为空时才能通过`delete()`方法成功删除。如果目录不为空,需要先删除其中的所有文件和子目录。
```java
if (d.exists()) {
if (d.list().length == 0) { // 检查目录是否为空
d.delete(); // 删除空目录
} else {
// 目录非空,不能删除
}
} else {
// 目录不存在
}
```
#### 如何在JSP中处理虚拟目录
在JSP页面中处理虚拟目录通常涉及到获取目录的实际物理路径。这在读取服务器上的文件或设置文件路径时非常重要。
```java
// 获取Web站点主目录的位置
String webRoot = request.getRealPath("/");
// 获取JSP网页所在的目录位置
String jspDir = request.getRealPath("./");
// 获取JSP网页所在目录上一层目录的位置
String parentDir = request.getRealPath("../");
```
上述代码展示了如何通过`request.getRealPath()`方法来获取不同级别的目录路径。这对于动态构建文件路径非常有用。
#### 文件属性的取得
获取文件属性也是Java文件操作中的重要部分,可以帮助我们更好地管理文件系统。
```java
String path = request.getRealPath("/");
File f = new File(path, "ReadData.txt");
if (f.exists()) {
System.out.println(f.getName() + "的属性如下:");
System.out.println("文件长度为:" + f.length());
System.out.println("是否是文件:" + f.isFile());
System.out.println("是否是目录:" + f.isDirectory());
System.out.println("是否可读取:" + f.canRead());
System.out.println("是否可写入:" + f.canWrite());
System.out.println("是否是隐藏文件:" + f.isHidden());
System.out.println("文件的最后修改日期为:" + new Date(f.lastModified()));
} else {
f.createNewFile(); // 如果文件不存在,则创建
}
```
这段代码演示了如何获取文件的基本属性,包括文件名、文件大小、是否为文件或目录、读写权限等信息。此外,还可以通过`lastModified()`方法获取文件最后一次被修改的时间。
以上就是关于Java读写文件及其相关操作的详细介绍,希望对您有所帮助。在实际开发过程中,根据需求灵活运用这些基本操作,能够有效地管理和控制文件资源。

nicky8378
- 粉丝: 0
最新资源
- 2023年C语言判断题题库.doc
- 2021中小学消防公开课网络直播活动观后感大全.docx
- 2023年安徽省二级考试VB试题汇总.doc
- 惠州市促进大数据发展实施方案.doc
- 浪潮财务软件系统客户端安装手册.doc
- 项目管理与策划考试题.doc
- 信息系统安全要素.pptx
- 零基础网络工程师都学什么.pdf
- 论中国移动综合网络资源管理系统技术规范.doc
- 基于单片机与GSM模块无线温度传输系统.doc
- 化工安全之系统安全分析与评价.ppt
- 数据库课程设计范本.doc
- 任务编制施工进度网络计划.pptx
- 网络营销大赛策划书.doc
- 卓帆网络增强版10套信息技术学业水平测试题库.docx
- 数据库系统工程师下半年考试试卷.doc