Java中的文件读写操作方法详解
文件读写是Java中很常见的操作,本文将详细介绍Java中常用的文件读写方法。
一、文件读操作
Java中文件读操作主要涉及读取文本文件和二进制文件,常用的方式有以下几种。
1. BufferedReader
BufferedReader是一个很方便的文本读取类,可以读取一个或多个字符,并且把字符存入缓存中,从缓存中读取字符可以减少磁盘访问,提高效率。下面是使用BufferedReader读取文件的代码。
FileReader fileReader = new FileReader("filename.txt");//文件读取流
BufferedReader bufferedReader = new BufferedReader(fileReader);//缓存读取流
String line;//定义读取一行数据的变量
while ((line = bufferedReader.readLine()) != null) {
System.out.println(line);
}
bufferedReader.close();
fileReader.close();
2. Scanner
Scanner是一个常用的文本输入类,也可以用来读取文件。Scanner类通过正则表达式对文本进行分割,可以调用next方法或nextInt方法获得下一个单词或数字。下面是使用Scanner读取文件的代码。
Scanner scanner = new Scanner(new File("filename.txt"));
while (scanner.hasNextLine()) {
System.out.println(scanner.nextLine());
}
scanner.close();
3. InputStream
InputStream是输入字节流的顶级接口,它提供了读取字节流的所有方法。下面是InputStream读取文件的代码。
InputStream inputStream = new FileInputStream("filename.txt");
byte[] buffer = new byte[inputStream.available()];
inputStream.read(buffer);
inputStream.close();
System.out.println(new String(buffer));
二、文件写操作
Java中文件写操作主要涉及写入文本文件和二进制文件,常用的方式有以下几种。
1. FileWriter和BufferedWriter
FileWriter是一个使用字符编码生成一个可写的文本文件的便捷类, BufferedWriter是一个文件写入流的缓冲区,可以提高写入效率。下面是使用FileWriter和BufferedWriter写入文件的代码。
FileWriter fileWriter = new FileWriter("filename.txt");
BufferedWriter bufferedWriter = new BufferedWriter(fileWriter);
bufferedWriter.write("hello world");
bufferedWriter.close();
fileWriter.close();
2. PrintWriter和FileOutputStream
PrintWriter是一个包装器类,用于向目标写入数据,它支持自动缓冲和自动刷新。FileOutputStream是文件输出流,用于写入二进制数据。下面是使用PrintWriter和FileOutputStream写入文件的代码。
PrintWriter printWriter = new PrintWriter(new FileOutputStream("filename.txt"));
printWriter.println("hello world");
printWriter.close();
3. RandomAccessFile
RandomAccessFile类提供了对文件随机读写的功能,它支持对文件的任意位置访问。下面是使用RandomAccessFile写入文件的代码。
RandomAccessFile randomAccessFile = new RandomAccessFile("filename.txt", "rw");
randomAccessFile.write("hello world".getBytes());
randomAccessFile.close();
以上就是Java中文件读写操作方法的详细介绍,使用这些方法可以进行文本文件和二进制文件的读写操作。
