Maison  >  Article  >  Java  >  Compétences en matière d'exploitation des flux d'entrée et de sortie du langage Java

Compétences en matière d'exploitation des flux d'entrée et de sortie du langage Java

WBOY
WBOYoriginal
2023-06-10 14:42:251393parcourir

Compétences en matière d'opération de flux d'entrée et de sortie du langage Java

Le langage Java fournit aux développeurs de nombreuses classes de flux d'entrée et de sortie pratiques, rendant les opérations de lecture et d'écriture de fichiers très simples et efficaces. Dans cet article, nous présenterons les connaissances de base des flux d'entrée et de sortie du langage Java et quelques techniques de fonctionnement courantes.

Flux d'entrée et de sortie Java : présentation

Les flux d'entrée et de sortie Java sont un mécanisme qui utilise certaines classes prédéfinies pour lire et écrire des flux de données ou des blocs de données. Ce sont des classes du package Java.io qui peuvent lire et écrire divers types de données, tels que du texte, des binaires, des images, etc. Le flux d'entrée Java est utilisé pour lire le flux d'entrée et le flux de sortie Java est utilisé pour écrire le flux de sortie. De plus, les flux d'entrée et de sortie Java peuvent également être utilisés pour lire et écrire des sockets réseau, des fichiers et d'autres périphériques d'entrée et de sortie.

Classification des flux d'entrée et de sortie Java

Les flux d'entrée et de sortie Java peuvent être divisés en quatre types principaux :

  1. Byte Stream : utilisez la forme binaire pour lire et écrire des données. C'est une sous-classe des classes abstraites InputStream et OutputStream. BufferedInputStream et BufferedOutputStream peuvent améliorer l'efficacité de la lecture et de l'écriture.
  2. Flux de caractères : utilisez la forme de caractères pour lire et écrire des données. C'est une sous-classe des classes abstraites Reader et Writer. BufferedReader et BufferedWriter peuvent améliorer l'efficacité de la lecture et de l'écriture.
  3. Object Stream : utilisé pour lire et écrire des objets Java. Il s'agit d'une sous-classe d'ObjectInputStream et d'ObjectOutputStream.
  4. Compression Stream : utilisé pour lire et écrire des données compressées et décompressées. Il s'agit d'une sous-classe de GZIPInputStream, GZIPoutputStream, InflaterInputStream et DeflaterOutputStream.

Compétences en matière d'opération de flux d'entrée et de sortie Java

Voici quelques compétences en matière d'opération de flux d'entrée et de sortie Java couramment utilisées :

  1. L'utilisation des classes BufferedInputStream et BufferedOutputStream peut améliorer l'efficacité de la lecture et de l'écriture. Ils peuvent mettre en cache les données en mémoire et les écrire sur le disque uniquement lorsque le cache est plein ou que certaines conditions sont remplies.
  2. Pour les fichiers volumineux, utilisez la classe RandomAccessFile pour lire et écrire rapidement des données à n'importe quel emplacement.
  3. Pour les fichiers texte, vous pouvez utiliser la classe FileReader ou FileWriter pour lire et écrire. Lors de la lecture et de l'écriture, vous devez spécifier l'encodage des caractères. Vous pouvez utiliser le code :
FileReader fr = new FileReader("file.txt");
BufferedReader br = new BufferedReader(fr);
String line;
while ((line = br.readLine()) != null) {
    System.out.println(line);
}
br.close();
fr.close();
  1. Pour les fichiers binaires, vous pouvez utiliser les classes DataInputStream et DataOutputStream pour lire et écrire. Notez que vous devez spécifier le type de données et la taille des octets à écrire lors de l'écriture. Vous pouvez utiliser le code :
DataOutputStream out = new DataOutputStream(
    new BufferedOutputStream(
        new FileOutputStream("binary.dat")));
out.writeInt(123);
out.writeDouble(3.14159);
out.writeChar('A');
out.close();

DataInputStream in = new DataInputStream(
    new BufferedInputStream(
        new FileInputStream("binary.dat")));
System.out.println(in.readInt());
System.out.println(in.readDouble());
System.out.println(in.readChar());
in.close();
  1. Lors de la lecture d'un fichier binaire en boucle, vous pouvez utiliser l'exception EOFException pour déterminer si le fichier a été lire. Si une exception est lue, cela signifie que la lecture est terminée.
DataInputStream in = new DataInputStream(
    new BufferedInputStream(
        new FileInputStream("binary.dat")));
try {
    while (true) {
        int i = in.readInt();
        double d = in.readDouble();
        char c = in.readChar();
        System.out.println(i + " " + d + " " + c);
    }
} catch (EOFException e) {
    System.out.println("文件读取完毕");
}
in.close();

Conclusion

Les flux d'entrée et de sortie Java sont une partie très importante de la programmation Java. Cet article présente les connaissances de base et les techniques de fonctionnement courantes des flux d'entrée et de sortie Java. Grâce à une étude approfondie et à l'utilisation des flux d'entrée et de sortie Java, l'efficacité et les performances de lecture et d'écriture des programmes Java peuvent être considérablement améliorées.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn