Java中常见的文件读写函数-包括读取和写入文件的方法
发布时间:2023-06-17 03:36:53
Java是一种流行的编程语言,常用于处理数据和文件。在Java中,提供了大量的文件读写函数和方法,方便开发者处理文件数据。下面介绍一些常用的文件读写函数。
1. FileReader和FileWriter
FileReader和FileWriter是一种文本文件读写类,用于读写文本文件。FileReader类可以读取文本文件数据,FileWriter类可以写入文本文件。使用这两个类,可以读写大量的文本数据。例如:
import java.io.*;
public class FileRW {
public static void main(String[] args) {
FileReader fr = null;
FileWriter fw = null;
try {
fr = new FileReader("input.txt");
fw = new FileWriter("output.txt");
int ch;
while ((ch = fr.read()) != -1) {
fw.write(ch);
}
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
if (fr != null)
fr.close();
if (fw != null)
fw.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
2. FileInputStream和FileOutputStream
FileInputStream和FileOutputStream是读写二进制文件的类,可以读写任何的二进制文件。例如:
try {
FileInputStream fis = new FileInputStream("image.jpg");
FileOutputStream fos = new FileOutputStream("output.jpg");
byte[] buffer = new byte[1024];
int len;
while ((len = fis.read(buffer)) != -1) {
fos.write(buffer, 0, len);
}
fis.close();
fos.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
3. BufferedReader和BufferedWriter
BufferedReader和BufferedWriter是对FileReader和FileWriter的封装,提供了更高效的读写操作。例如:
try {
BufferedReader br = new BufferedReader(new FileReader("input.txt"));
BufferedWriter bw = new BufferedWriter(new FileWriter("output.txt"));
String line;
while ((line = br.readLine()) != null) {
bw.write(line);
}
br.close();
bw.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
4. Scanner
Scanner是一个可以从文件或输入流中读取数据的类,可以用于读取文件的内容。例如:
try {
Scanner scanner = new Scanner(new File("input.txt"));
while (scanner.hasNextLine()) {
System.out.println(scanner.nextLine());
}
scanner.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
}
5. RandomAccessFile
RandomAccessFile是一个支持随机读写的二进制文件类,可以读写文件中任意位置的数据。例如:
try {
RandomAccessFile raf = new RandomAccessFile("file.txt", "rw");
raf.seek(10);
raf.write("hello".getBytes());
raf.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
综上所述,Java提供了多种文件读写方法,开发者可以根据需要选择合适的方法来处理文件数据。
