The I/O data flow tools in the Java function library mainly include: InputStream: abstract input stream OutputStream: abstract output stream FileInputStream: read bytes from the file FileOutputStream: write bytes to the file ByteArrayInputStream: read from the byte array Get bytes ByteArrayOutputStream: Write bytes to byte array BufferedInputStream: Input stream with buffer, improve performance BufferedOutputStream: Output stream with buffer, improve performance DataInputStream: Read basic data types from input stream DataOutputStream: To output stream Writing basic data types
Introduction
Data flow tools are used in Java to process binary data and are very useful in input/output (I/O) operations. The Java function library provides multiple I/O data flow tools. This article will introduce the most commonly used tools and provide practical cases.
Commonly used data flow tools
Tool | Description |
---|---|
InputStream |
Abstract input stream |
OutputStream |
Abstract output Stream |
FileInputStream |
Read bytes from file |
FileOutputStream |
Write bytes to file |
##ByteArrayInputStream
| Read bytes from byte array|
ByteArrayOutputStream
| Write bytes to byte array|
BufferedInputStream
| Buffered input stream to improve performance|
BufferedOutputStream
| Buffered output stream to improve performance|
DataInputStream
| Read basic data types from the input stream|
DataOutputStream
| Write basic data types to the output stream
Practical case
Read text file
import java.io.FileInputStream; import java.io.IOException; public class ReadTextFile { public static void main(String[] args) { try (FileInputStream fis = new FileInputStream("myfile.txt")) { // 逐字节读取文件 int c; while ((c = fis.read()) != -1) { System.out.print((char) c); } } catch (IOException e) { e.printStackTrace(); } } }
Write to text file
import java.io.FileOutputStream; import java.io.IOException; public class WriteTextFile { public static void main(String[] args) { try (FileOutputStream fos = new FileOutputStream("myfile.txt")) { // 写入文本 String text = "Hello, world!"; fos.write(text.getBytes()); } catch (IOException e) { e.printStackTrace(); } } }
Read basic data types from byte array
import java.io.ByteArrayInputStream; import java.io.DataInputStream; import java.io.IOException; public class ReadBasicTypesFromBytes { public static void main(String[] args) { // 定义字节数组并写入基本数据类型 byte[] bytes = {1, 2, 3, 4}; ByteArrayInputStream bis = new ByteArrayInputStream(bytes); DataInputStream dis = new DataInputStream(bis); try { // 读取基本数据类型 int i = dis.readInt(); System.out.println("Int: " + i); } catch (IOException e) { e.printStackTrace(); } } }
Write basic data types to byte array
import java.io.ByteArrayOutputStream; import java.io.DataOutputStream; import java.io.IOException; public class WriteBasicTypesToBytes { public static void main(String[] args) { // 创建字节数组输出流 ByteArrayOutputStream bos = new ByteArrayOutputStream(); DataOutputStream dos = new DataOutputStream(bos); try { // 写入基本数据类型 dos.writeInt(12345); dos.flush(); // 获取字节数组 byte[] bytes = bos.toByteArray(); } catch (IOException e) { e.printStackTrace(); } } }
The above is the detailed content of What are the commonly used I/O data flow tools in Java function libraries?. For more information, please follow other related articles on the PHP Chinese website!