Maison >Java >javaDidacticiel >Quand utiliser la méthode readAllBytes() d'InputStream dans Java 9 ?
À partir de Java 9, nous pouvons utiliser la méthode readAllBytes() dans la classe InputStream pour lire tous les octets dans un tableau d'octets. Cette méthode lit tous les octets de l'objet InputStream en même temps et se bloque jusqu'à ce que tous les octets restants aient été lus et que la fin du flux soit détectée ou qu'une exception soit levée. La méthode
>reallAllBytes() ne peut pas fermer automatiquement l'instance InputStream . Lorsqu'il atteint la fin du flux, d'autres appels à cette méthode peuvent renvoyer un tableau d'octets vide. Nous pouvons utiliser cette méthode dans des cas d'utilisation simples où il est pratique de lire tous les octets dans un tableau d'octets plutôt que de lire un flux d'entrée contenant une grande quantité de données.
<strong>public byte[] readAllBytes() throws IOException</strong>
Dans l'exemple ci-dessous, nous avons créé un fichier "Technology.txt" dans le dossier "C:Temp" contenant des données simples : { "JAVA", "PYTHON", " JAVASCRIPT", "SELENIUM", "SCALA"}.
import java.nio.*; import java.nio.file.*; import java.io.*; import java.util.stream.*; import java.nio.charset.StandardCharsets; public class ReadAllBytesMethodTest { public static void main(String args[]) { try(<strong>InputStream </strong>stream = <strong>Files</strong>.newInputStream(<strong>Paths.get</strong>("C://Temp//Technology.txt"))) { <strong>// Convert stream to string</strong> String contents = new String(stream.<strong>readAllBytes()</strong>, <strong>StandardCharsets.UTF_8</strong>); <strong>// To print the string content</strong> System.out.println(contents); } catch(IOException ioe) { ioe.printStackTrace(); } } }
<strong>"JAVA", "PYTHON", "JAVASCRIPT", "SELENIUM", "SCALA"</strong>
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!