Java函数:如何读取文件并存储数据?
发布时间:2023-06-11 02:20:06
Java语言是一种非常强大的编程语言,可以用它来实现各种各样的功能。在Java中,有很多函数可以用来读取文件并存储数据。本文将介绍几个常用的函数及其用法。
1. FileReader和BufferedReader
读取文件可以使用Java的FileReader类和BufferedReader类。FileReader类用于读取文件,BufferedReader类用于缓存读取文件。
代码如下:
FileReader fr;
BufferedReader br;
try {
fr = new FileReader("filename.txt");
br = new BufferedReader(fr);
String line;
while ((line = br.readLine()) != null) {
System.out.println(line);
}
br.close();
fr.close();
} catch (IOException e) {
e.printStackTrace();
}
2. InputStream和OutputStream
Java中还可以使用InputStream和OutputStream读取和写入文件。InputStream是一个抽象类,代表输入流对象,可以从流中读取数据;OutputStream也是一个抽象类,代表输出流对象,可以向流中写入数据。
代码如下:
InputStream in = null;
OutputStream out = null;
try {
in = new FileInputStream("filename.txt");
out = new FileOutputStream("output.txt");
byte[] buf = new byte[1024];
int len;
while ((len = in.read(buf)) > 0) {
out.write(buf, 0, len);
}
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
if (in != null) {
in.close();
}
if (out != null) {
out.close();
}
} catch (IOException e) {
e.printStackTrace();
}
}
3. Scanner
Scanner类是Java中一个非常方便的类,可以用来处理输入数据。它可以接受文件对象作为输入,然后读取文件中的数据。
代码如下:
Scanner scanner;
try {
scanner = new Scanner(new File("filename.txt"));
while (scanner.hasNextLine()) {
String line = scanner.nextLine();
System.out.println(line);
}
scanner.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
}
4. RandomAccessFile
如果要在文件中随意读写数据,则可以使用RandomAccessFile类。这个类可以随时读取文件中的任何一个数据块,也可以在文件中随意写入数据。
代码如下:
RandomAccessFile reader;
try {
reader = new RandomAccessFile("filename.txt", "r");
byte[] b = new byte[16];
int bytesRead = reader.read(b, 0, 16);
while (bytesRead != -1) {
System.out.write(b, 0, bytesRead);
bytesRead = reader.read(b, 0, 16);
}
reader.close();
} catch (IOException e) {
e.printStackTrace();
}
以上就是一些常用的Java函数来读取文件并存储数据的方法。运用这些函数,我们可以轻松地读取文件,并将数据存储在内存或外存储器中。同时,也可以使用这些函数来处理各种复杂的文件读写操作。
