Avec un fichier, nous pouvons le transformer en un stream de chaînes en utilisant, par exemple,
Stream lines = Files.lines(Paths.get("input.txt"))
Pouvons-nous créer un stream de lignes à partir de l’entrée standard de la même manière?
Une compilation de la réponse de kocko et du commentaire de Holger:
BufferedReader in = new BufferedReader(new InputStreamReader(System.in)); Stream stream = in.lines().limit(numberOfLinesToBeRead);
Habituellement, l’entrée standard est lue ligne par ligne. Vous pouvez donc stocker toute la ligne de lecture dans une collection, puis créer un Stream
qui l’utilise.
Par exemple:
List allReadLines = new ArrayList (); BufferedReader in = new BufferedReader(new InputStreamReader(System.in)); Ssortingng s; while ((s = in.readLine()) != null && s.length() != 0) { allReadLines.add(s); } Stream stream = allReadLines.stream();