Java文件操作:创建、删除、复制与读取
需积分: 10 13 浏览量
更新于2024-09-24
收藏 5KB TXT 举报
"Java中对文件的操作"
在Java编程中,对文件的操作是常见的任务,Java提供了丰富的IO类库来支持这些操作。本资源主要涵盖了五个方面:创建目录、创建新文件、删除文件、复制文件以及读取文件内容。
1. 创建目录:
在Java中,我们使用`java.io.File`类来处理文件和目录。创建新目录可以使用`mkdir()`方法。例如:
```java
String filePath = "c:/aaa/";
File myFilePath = new File(filePath);
if (!myFilePath.exists()) {
myFilePath.mkdir();
}
```
这段代码首先创建一个`File`对象,然后检查路径是否存在,如果不存在则创建一个新的目录。
2. 创建新文件:
创建新文件可以使用`createNewFile()`方法。下面的示例展示了如何创建一个文本文件并写入内容:
```java
String filePath = "c:/.txt";
File myFilePath = new File(filePath);
if (!myFilePath.exists()) {
myFilePath.createNewFile();
}
FileWriter resultFile = new FileWriter(myFilePath);
PrintWriter myFile = new PrintWriter(resultFile);
String strContent = "测试内容".toString();
myFile.println(strContent);
resultFile.close();
```
这里不仅创建了文件,还通过`FileWriter`和`PrintWriter`向文件中写入了字符串。
3. 删除文件:
删除文件使用`delete()`方法。例如:
```java
String filePath = "c:/要删除的文件.xls";
File myDelFile = new File(filePath);
myDelFile.delete();
```
如果文件存在且没有被其他进程占用,它将被成功删除。
4. 复制文件:
复制文件通常涉及使用`FileInputStream`和`FileOutputStream`。以下是一个简单的文件复制示例:
```java
int byteSum = 0;
int byteRead = 0;
FileInputStream inStream = new FileInputStream("c:/aaa.doc");
FileOutputStream fs = new FileOutputStream("d:/aaa.doc");
byte[] buffer = new byte[1444];
int length;
while ((byteRead = inStream.read(buffer)) != -1) {
System.out.println("<DT><B>" + byteRead + "</B></DT>");
byteSum += byteRead;
fs.write(buffer, 0, byteRead);
}
inStream.close();
```
这段代码逐块读取源文件并写入目标文件,直至文件末尾。
5. 读取文件内容:
除了上述的逐字节读取,还可以使用`BufferedReader`或`Scanner`等类以行或字符为单位读取文件内容。例如:
```java
String filePath = "c:/文件路径.txt";
BufferedReader reader = new BufferedReader(new FileReader(filePath));
String line;
while ((line = reader.readLine()) != null) {
System.out.println(line);
}
reader.close();
```
这段代码会逐行打印文件内容。
以上是Java中对文件的基本操作,包括创建、删除、复制和读取。这些基本操作是任何文件系统交互的基础,可以满足大部分日常开发需求。在实际应用中,可能还需要考虑异常处理、多线程安全等因素,以确保程序的健壮性和安全性。
2014-01-19 上传
2021-04-02 上传
2023-06-07 上传
2023-05-25 上传
2023-06-09 上传
2024-10-25 上传
2024-06-07 上传
2023-06-01 上传
Luckstar
- 粉丝: 0
- 资源: 3
最新资源
- C语言数组操作:高度检查器编程实践
- 基于Swift开发的嘉定单车LBS iOS应用项目解析
- 钗头凤声乐表演的二度创作分析报告
- 分布式数据库特训营全套教程资料
- JavaScript开发者Robert Bindar的博客平台
- MATLAB投影寻踪代码教程及文件解压缩指南
- HTML5拖放实现的RPSLS游戏教程
- HT://Dig引擎接口,Ampoliros开源模块应用
- 全面探测服务器性能与PHP环境的iprober PHP探针v0.024
- 新版提醒应用v2:基于MongoDB的数据存储
- 《我的世界》东方大陆1.12.2材质包深度体验
- Hypercore Promisifier: JavaScript中的回调转换为Promise包装器
- 探索开源项目Artifice:Slyme脚本与技巧游戏
- Matlab机器人学习代码解析与笔记分享
- 查尔默斯大学计算物理作业HP2解析
- GitHub问题管理新工具:GIRA-crx插件介绍