Java中的输入输出函数有哪些?如何使用它们来读写文件和流?
Java中常用的输入输出函数包括System.out.println()、System.out.print()、System.in和System.out等。其中,System.out.println() 和System.out.print()函数用于输出字符和对象等信息到控制台,常用于调试和输出结果。 System.in主要用于从控制台输入字符信息,例如用户的输入。System.out用于输出数据流和二进制数据等信息。
除此之外,Java还提供了一系列用于读写文件和流的函数,在Java中,通过使用输入输出流实现数据的读取和写入。输入流 InputStream 和输出流OutputStream 是Java I/O操作中最基本的数据流。在 Java 中输入流和输出流从功能上可以分为字节流和字符流两种。下面分别介绍一下字节流和字符流。
1.字节流
字节流的操作对象是字节,可以操作所有类型的数据。字节流以字节为单位,一次可以读取一个或多个字节,并且可以以任何顺序读取,例如可以先读取文件的中间部分然后再读取文件的开头或结尾。常用的字节流包括FileInputStream(文件输入流)、FileOutputStream(文件输出流)、DataInputStream(读数据输入流)、DataOutputStream(写数据输出流)等。
使用字节流读写文件的流程一般为:
//读取文件
FileInputStream fis = new FileInputStream("文件名");
byte[] buffer = new byte[1024];
int len = 0;
while ((len = fis.read(buffer)) != -1) {
//读取buffer中的数据
}
fis.close();
//写入文件
FileOutputStream fos = new FileOutputStream("文件名");
byte[] data = "这是需要写入的数据".getBytes();
fos.write(data);
fos.close();
2.字符流
字符流的操作对象是字符,可以操作所有字符类型的数据,例如字符串和字符型数组等。字符流以字符为单位,一次读取一个或多个字符,因此字符流适用于读取或写入文本文件。不同于字节流,字符流只能按顺序读取文件中的数据。常用的字符流包括FileReader(读文件输入流)、FileWriter(写文件输出流)、BufferedReader(缓存读输入流)、BufferedWriter(缓存写输出流)等。
使用字符流读写文件的流程一般为:
//读取文件
FileReader reader = new FileReader("文件名");
char[] buffer = new char[1024];
int len = 0;
while ((len = reader.read(buffer)) != -1) {
//读取buffer中的数据
}
reader.close();
//写入文件
FileWriter writer = new FileWriter("文件名");
writer.write("这是需要写入的数据");
writer.close();
文件和流的处理是Java编程常用的操作之一,掌握文件和流的读写方法也是Java程序设计的必修知识之一。Java的输入输出函数有很多,大多数的输入输出流都可以派生自 InputStream 和 OutputStream,并提供不同的特性和方法。因此,在实际工作中需要根据具体的需求选择不同类型的输入输出流来实现数据的读取和写入。
