如何在Java中操作文件的读取和写入函数
在Java中,想要操作文件的读取和写入,需要使用Java中I/O类库提供的各种相关类和方法。下面将具体介绍Java中常用的文件读取和写入函数。
一、文件读取
1. FileReader类
FileReader类用于读取字符文件,它是Reader类的子类。它的构造方法如下:
FileReader(File file) throws FileNotFoundException FileReader(String fileName) throws FileNotFoundException
使用FileReader可以简单地读取文本文件中的数据。可以使用read()方法读取单个字符,也可以使用read(char cbuf[])方法读取多个字符。下面为示例代码:
File file = new File("E:\\test.txt");
FileReader reader = new FileReader(file);
int data = reader.read();
while (data != -1) {
System.out.print((char) data);
data = reader.read();
}
reader.close();
2. FileInputStream类
FileInputStream类用于读取二进制文件,它是InputStream类的子类。它的构造方法如下:
FileInputStream(File file) throws FileNotFoundException FileInputStream(String name) throws FileNotFoundException
使用FileInputStream可以读取任何类型文件,包括音频、图片等非文本文件。可以使用read()方法读取单个字节,也可以使用read(byte[] b)方法读取多个字节。下面为示例代码:
File file = new File("E:\\test.jpg");
FileInputStream fis = new FileInputStream(file);
byte[] buffer = new byte[1024];
int length = fis.read(buffer);
while (length != -1) {
System.out.write(buffer, 0, length);
length = fis.read(buffer);
}
fis.close();
3. BufferedReader类
BufferedReader类用于高效地读取文本文件,它是Reader类的子类。它的构造方法如下:
BufferedReader(Reader in) BufferedReader(Reader in, int sz)
使用BufferedReader类可以实现高效读取文本文件,特别是当需要按行读取文本内容时,使用BufferedReader更加方便。下面为示例代码:
File file = new File("E:\\test.txt");
FileReader fr = new FileReader(file);
BufferedReader br = new BufferedReader(fr);
String s = br.readLine();
while (s != null) {
System.out.println(s);
s = br.readLine();
}
fr.close();
br.close();
二、文件写入
1. FileWriter类
FileWriter类用于写入字符文件,它是Writer类的子类。它的构造方法如下:
FileWriter(File file) throws IOException FileWriter(File file, boolean append) throws IOException FileWriter(String fileName) throws IOException FileWriter(String fileName, boolean append) throws IOException
使用FileWriter来写入数据非常简单,在实例化FileWriter类之后,就可以使用write()方法,将数据写入文件中。在不同的构造函数中,append参数是可选的,如果将append参数设置为true,则将新数据附加到文件的末尾。下面为示例代码:
File file = new File("E:\\test.txt");
FileWriter fw = new FileWriter(file);
fw.write("Hello,World!");
fw.close();
2. FileOutputStream类
FileOutputStream类用于写入二进制文件,它是OutputStream类的子类。它的构造方法如下:
FileOutputStream(File file) throws FileNotFoundException FileOutputStream(File file, boolean append) throws FileNotFoundException FileOutputStream(String name) throws FileNotFoundException FileOutputStream(String name, boolean append) throws FileNotFoundException
使用FileOutputStream来写入数据也很简单,和FileReader类似,可以使用write()方法,将数据写入文件中。同样,append参数也是可选的,如果将append参数设置为true,则将新数据附加到文件的末尾。下面为示例代码:
File file = new File("E:\\test.jpg");
FileOutputStream fos = new FileOutputStream(file);
byte[] data = "Hello,World!".getBytes();
fos.write(data);
fos.close();
以上就是Java中操作文件的读取和写入函数的简单介绍,读者可以根据自己的需要合理地选择和使用相关类和方法,来实现文件的读取和写入。
