Java IO 实战:文件创建、读取、写入与删除教程

4星 · 超过85%的资源 需积分: 31 33 下载量 188 浏览量 更新于2024-11-03 1 收藏 44KB DOC 举报
"本文将介绍如何在Java IO中创建、读取、写入和删除文件,以及涉及到的文件上传和目录创建的相关操作。" 在Java编程中,IO(Input/Output)流是处理数据输入和输出的核心工具。针对标题和描述中的内容,我们将详细讨论以下几个知识点: 1. 创建文件: 使用`java.io.File`类可以创建文件。例如,`new File("路径/文件名")`会创建一个表示文件对象。要实际创建文件,可以调用`createNewFile()`方法,但需确保父目录已存在。例如: ```java File myFile = new File("C:/test/myfile.txt"); if (!myFile.exists()) { myFile.createNewFile(); } ``` 2. 读取文件: 读取文件通常涉及使用`InputStreamReader`、`BufferedReader`等类。首先,创建`FileInputStream`对象,然后通过它构造`InputStreamReader`,再用`InputStreamReader`创建`BufferedReader`。如下所示: ```java File file = new File("path/to/file.txt"); BufferedReader br = new BufferedReader(new FileReader(file)); String line; while ((line = br.readLine()) != null) { System.out.println(line); } br.close(); ``` 3. 写入文件: 写入文件可以使用`FileWriter`和`BufferedWriter`。创建`FileWriter`实例,然后通过它创建`BufferedWriter`。如下所示: ```java File file = new File("path/to/file.txt"); BufferedWriter writer = new BufferedWriter(new FileWriter(file)); writer.write("Hello, World!"); writer.newLine(); writer.close(); ``` 4. 删除文件: 删除文件使用`delete()`方法。例如: ```java File file = new File("path/to/file.txt"); boolean isDeleted = file.delete(); if (isDeleted) { System.out.println("文件已删除"); } else { System.out.println("删除文件失败"); } ``` 5. 文件上传: 文件上传通常涉及HTML表单和Servlet处理。在HTML中,`<input type="file">`用于选择本地文件。在Servlet中,可以使用`HttpServletRequest`的`getPart()`或`getParts()`方法来获取上传的文件。示例代码如下: ```java Part filePart = request.getPart("importFile"); InputStream is = filePart.getInputStream(); // 进行进一步处理... ``` 6. 创建目录: 创建目录同样使用`File`类的`mkdir()`或`mkdirs()`方法。`mkdirs()`会创建多级目录,而`mkdir()`仅创建单级。示例: ```java String filePath = "C:\\测试\\"; File myFilePath = new File(filePath); if (!myFilePath.exists()) { myFilePath.mkdirs(); } ``` 7. 编码处理: 文件读写时要注意编码问题。在Java中,使用`InputStreamReader`和`OutputStreamWriter`时,可以指定编码,如"MS932"。在读取文件时,不正确地设置编码可能导致乱码。 在处理文件I/O时,确保正确处理异常,并在操作完成后关闭流,以避免资源泄露。在上述示例中,使用了`try-with-resources`语句,它会自动关闭流,但在较旧的Java版本中,需要手动调用`close()`方法。