Java中读取文件内容的函数
在 Java 中读取文件内容是一项基本的操作,它可以帮助我们通过代码获取文件的内容存储到内存中,方便进行进一步的操作。下面将介绍在 Java 中读取文件内容的函数。
一、读取文本文件
在 Java 中读取文本文件的函数主要有两种:使用 BufferedReader 和 FileReader 读取文本文件和使用 Scanner 读取文本文件。
1. 使用 BufferedReader 和 FileReader 读取文本文件
BufferedReader 和 FileReader 都是 Java I/O 中常用的类,它们能够读取文本文件中的内容并把其存放在内存中。其中 BufferedReader 提供了一个 readLine() 方法,用于读取文本文件中的一行数据。
示例代码:
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
public class ReadFileExample {
public static void main(String[] args) {
try {
FileReader reader = new FileReader("file.txt");
BufferedReader bufferedReader = new BufferedReader(reader);
String line = bufferedReader.readLine();
while (line != null) {
System.out.println(line);
line = bufferedReader.readLine();
}
bufferedReader.close();
reader.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
2. 使用 Scanner 读取文本文件
Scanner 是 Java 中的一个类,使用它可以读取文本文件中的数据。Scanner 将文件中的每一行当做一个字符串,然后可以使用 nextLine() 方法对其进行读取。
示例代码:
import java.io.File;
import java.io.FileNotFoundException;
import java.util.Scanner;
public class ReadFileExample {
public static void main(String[] args) {
try {
File file = new File("file.txt");
Scanner scanner = new Scanner(file);
while (scanner.hasNextLine()) {
String line = scanner.nextLine();
System.out.println(line);
}
scanner.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
}
}
}
二、读取二进制文件
Java 中读取二进制文件与读取文本文件略有不同。因为二进制文件中的数据是以字节形式存储的,所以我们需要使用字节流来读取二进制文件中的数据。
1. 使用 InputStream 和 BufferedInputStream 读取二进制文件
InputStream 和 BufferedInputStream 都是 Java I/O 中用于读取二进制文件的类。其中,InputStream 是一个字节流,可以以字节形式读取二进制文件中的内容,并将其存储到内存中。BufferedInputStream 是 InputStream 的一个缓冲类,可以加快数据读取速度。
示例代码:
import java.io.BufferedInputStream;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
public class ReadBinaryFileExample {
public static void main(String[] args) {
try {
InputStream in = new FileInputStream("file.bin");
BufferedInputStream buffer = new BufferedInputStream(in);
byte[] data = new byte[buffer.available()];
buffer.read(data);
buffer.close();
in.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
2. 使用 DataInputStream 读取二进制文件
DataInputStream 是 Java I/O 中用于读取二进制文件的类。它提供了一系列的 readXxx() 方法,用于读取二进制文件中的不同类型的数据。
示例代码:
import java.io.DataInputStream;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
public class ReadBinaryFileExample {
public static void main(String[] args) {
try {
InputStream in = new FileInputStream("file.bin");
DataInputStream data = new DataInputStream(in);
int i = data.readInt();
float f = data.readFloat();
double d = data.readDouble();
data.close();
in.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
以上是在 Java 中读取文件内容的函数介绍,其中包括读取文本文件和读取二进制文件的方法。通过了解这些函数的使用方法,我们可以更方便地读取和操作文件内容。
