Les outils de flux de données d'E/S de la bibliothèque de fonctions Java incluent principalement : InputStream : flux d'entrée abstrait OutputStream : flux de sortie abstrait FileInputStream : lire les octets du fichier FileOutputStream : écrire des octets dans le fichier ByteArrayInputStream : lire les mots du tableau d'octets Section ByteArrayOutputStream : écrit des octets dans un tableau d'octets BufferedInputStream : flux d'entrée avec tampon, améliore les performances BufferedOutputStream : flux de sortie avec tampon, améliore les performances DataInputStream : lit les types de données de base à partir du flux d'entrée DataOutputStream : écrit dans le flux de sortie Types de données de base
Introduction
Les outils de flux de données sont utilisés en Java pour traiter des données binaires dans des opérations d'entrée/sortie (E/S) très utiles. La bibliothèque de fonctions Java fournit plusieurs outils de flux de données d'E/S. Cet article présentera les outils les plus couramment utilisés et fournira des cas pratiques. Outils de flux de données couramment utilisés putStream
Flux de sortie abstrait
FileInputStream
FileOutputStream
InputStream |
抽象输入流 |
OutputStream |
抽象输出流 |
FileInputStream |
从文件读取字节 |
FileOutputStream |
向文件写入字节 |
ByteArrayInputStream |
从字节数组读取字节 |
ByteArrayOutputStream |
向字节数组写入字节 |
BufferedInputStream |
带缓冲区的输入流,提高性能 |
BufferedOutputStream |
带缓冲区的输出流,提高性能 |
DataInputStream |
从输入流读取基本数据类型 |
DataOutputStream suis |
Lire les octets du tableau d'octets |
ByteArrayOutputStream
Écrire les octets dans le tableau d'octets
BufferedInputStream
BufferedOutputStream
Flux de sortie avec tampon, améliore les performances
DataInputStream
DataOutputStream
Écrire les types de données de base dans le flux de sortieCas pratiqueLire des fichiers texte
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(); } } }
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(); } } }
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(); } } }
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(); } } }
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!