Maison  >  Article  >  Java  >  Java utilise la fonction available() de la classe InputStream pour obtenir le nombre d'octets lisibles du fichier

Java utilise la fonction available() de la classe InputStream pour obtenir le nombre d'octets lisibles du fichier

WBOY
WBOYoriginal
2023-07-26 12:37:492781parcourir

Java utilise la fonction available() de la classe InputStream pour obtenir le nombre d'octets lisibles d'un fichier

En Java, traiter le flux d'entrée d'un fichier est une opération très courante. Une classe couramment utilisée est InputStream, qui définit des méthodes de lecture d'octets. En plus des fonctions de lecture de base, InputStream fournit également d'autres fonctions pour exploiter facilement les flux de fichiers.

L'une des fonctions utiles est available(), qui peut être utilisée pour obtenir le nombre d'octets pouvant être lus dans le flux d'entrée. Ceci est utile si vous avez besoin de connaître la taille du fichier ou pour les opérations de mise en mémoire tampon lors du traitement des fichiers.

Ce qui suit est un exemple de code pour utiliser la fonction available() pour obtenir le nombre d'octets lisibles d'un fichier :

import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;

public class FileReadExample {
    public static void main(String[] args) {
        try {
            // 打开文件输入流
            InputStream inputStream = new FileInputStream("example.txt");

            // 获取文件可读字节数
            int availableBytes = inputStream.available();
            System.out.println("文件可读字节数:" + availableBytes);

            // 读取文件内容
            byte[] buffer = new byte[availableBytes];
            int bytesRead = inputStream.read(buffer);
            String fileContent = new String(buffer, "UTF-8");
            System.out.println("文件内容:
" + fileContent);

            // 关闭输入流
            inputStream.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

Dans l'exemple ci-dessus, nous créons d'abord un objet FileInputStream pour ouvrir un flux d'entrée de fichier, en supposant que le fichier le nom est "exemple .txt". Ensuite, utilisez la fonction inputStream.available() pour obtenir le nombre d'octets lisibles du fichier et stockez-le dans la variable availableBytes.

Ensuite, nous créons un tampon de tableau d'octets pour stocker le contenu lu. Nous utilisons la fonction inputStream.read(buffer) pour lire le contenu du fichier dans le tampon et renvoyer le nombre réel d'octets lus. Ensuite, nous convertissons le tampon en chaîne fileContent, en utilisant le codage UTF-8.

Enfin, nous imprimons les octets lisibles du fichier et le contenu du fichier, et fermons le flux d'entrée.

Cet exemple montre comment utiliser la fonction available() de InputStream pour obtenir le nombre d'octets lisibles d'un fichier et lire le contenu du fichier dans un tableau d'octets. Ceci est utile pour gérer les opérations sur les fichiers et les opérations de mise en mémoire tampon.

En résumé, la classe InputStream fournit des fonctions très utiles pour gérer les flux d'entrée de fichiers. Parmi eux, la fonction available() peut nous aider à obtenir le nombre d'octets lisibles du fichier, ce qui nous permet d'effectuer facilement des opérations sur les fichiers et des opérations de mise en mémoire tampon. En utilisant cette fonction, nous pouvons mieux traiter et gérer le flux d'entrée des fichiers, améliorant ainsi la lisibilité et l'efficacité du programme.

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