Java 读取本地文件实例详解
1. 读取文本文件
1.1 创建文件对象
首先,需要创建一个 File
对象来表示本地文件。下面是创建 file.txt
文件的示例代码。
// 创建 File 对象
File file = new File("file.txt");
如果文件不在当前项目的工作目录中,则需要提供文件的完整路径。
1.2 读取文件内容
使用 Java 的输入流来读取文件内容。在读取文件之前,需要创建一个输入流对象并关联到文件对象上。Java 提供了很多种不同的输入流类型,这里我们使用 FileReader
来读取文本文件。读取文本文件时,通常使用 BufferedReader
或 Scanner
对输入流进行包装,从而方便地读取文件内容。
下面是一个完整的读取文件内容的示例代码,包括了异常处理。
try {
// 创建 File 对象
File file = new File("file.txt");
// 创建 FileReader 对象
FileReader reader = new FileReader(file);
// 创建 BufferedReader 对象
BufferedReader bufferedReader = new BufferedReader(reader);
// 读取文件内容
String line;
while ((line = bufferedReader.readLine()) != null) {
System.out.println(line);
}
} catch (IOException e) {
e.printStackTrace();
}
2. 读取二进制文件
读取二进制文件与读取文本文件类似,但需要使用 InputStream
来读取二进制数据。下面是一个示例代码,展示如何读取本地的一个图片文件 image.png
。
2.1 创建文件对象
创建文件对象和读取文本文件时的方式相同,只需要提供一个表示文件的路径或相对路径即可。
// 创建 File 对象
File file = new File("image.png");
2.2 读取文件内容
在创建文件对象后,需要创建一个输入流对象并关联到文件对象上。然后,循环从输入流读取字节,直到读取完成。下面是一个完整的读取二进制文件的示例代码,包括了异常处理。
try {
// 创建 File 对象
File file = new File("image.png");
// 创建 FileInputStream 对象
FileInputStream inputStream = new FileInputStream(file);
// 读取文件内容
byte[] buffer = new byte[1024];
int length;
while ((length = inputStream.read(buffer)) != -1) {
System.out.write(buffer, 0, length);
}
} catch (IOException e) {
e.printStackTrace();
}
除了上述示例代码外,还可以使用 DataInputStream
来读取二进制文件中的数据。DataInputStream
在读取二进制数据时,可以对数据进行解析,并将其转换为基本类型或自定义类型。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:java 读取本地文件实例详解 - Python技术站