Java文件读写方法详解及示例

1 下载量 152 浏览量 更新于2024-09-03 收藏 57KB PDF 举报
"这篇Java读写文件方法的总结主要涵盖了Java中常见的文件读取和写入操作,适合初学者和有经验的开发者回顾基础知识。" Java语言提供了多种方式来读写文件,这些方法适用于处理文本文件和二进制文件。在Java IO(输入/输出)包中,我们可以找到多种类和方法来实现这一目的。以下是对标题和描述中提到的Java读写文件方法的详细总结: 1. Java读文件 - 以字节为单位读取文件: 使用`FileInputStream`类可以以字节流的方式读取文件。每次读取一个或多个字节,适合处理二进制文件。示例代码片段展示了如何一次性读取一个字节和多个字节。 ```java File file = new File(filename); FileInputStream in = null; try { in = new FileInputStream(file); int temp; while ((temp = in.read()) != -1) { System.out.println(temp); } } catch (IOException e) { e.printStackTrace(); } finally { try { if (in != null) { in.close(); } } catch (IOException ex) { ex.printStackTrace(); } } ``` - 以字符为单位读取文件: 如果处理的是文本文件,可以使用`FileReader`或`BufferedReader`类。`FileReader`直接读取字符,而`BufferedReader`则通过缓冲区提高效率。例如: ```java FileReader fr = new FileReader(filename); BufferedReader br = new BufferedReader(fr); String line; while ((line = br.readLine()) != null) { System.out.println(line); } br.close(); fr.close(); ``` - 随机访问文件: 对于需要在文件中随机定位读取的场景,可以使用`RandomAccessFile`类。 2. Java写文件 - 以字节为单位写入文件: 可以使用`FileOutputStream`类将字节数据写入文件。可以写入单个字节或批量字节。 ```java FileOutputStream fos = new FileOutputStream(filename); fos.write(data); // data是字节数组 fos.close(); ``` - 以字符为单位写入文件: 使用`FileWriter`或`BufferedWriter`类进行文本文件的写入。`FileWriter`用于写入单个字符,`BufferedWriter`则提供缓冲功能。 ```java FileWriter fw = new FileWriter(filename); BufferedWriter bw = new BufferedWriter(fw); bw.write(text); // text是字符串 bw.newLine(); // 添加换行符 bw.close(); fw.close(); ``` - 追加模式写入: 若要在文件末尾追加内容,只需在创建`FileOutputStream`或`FileWriter`时设置`true`作为第二个参数。 ```java FileOutputStream fos = new FileOutputStream(filename, true); // 或 FileWriter fw = new FileWriter(filename, true); ``` 在实际开发中,我们通常会结合异常处理、关闭流的资源管理,以及使用try-with-resources语句来简化代码。上述代码片段没有包含这些最佳实践,实际应用时应进行适当改进。此外,对于大量数据的读写,考虑使用NIO(New IO)或NIO.2 API,它们提供了更高效的数据传输机制。