voglio convertire un InputStream is
in un Stream<String> stream
dato un Charset cs
in modo tale che stream
consiste delle linee di is
. Inoltre, una riga di is
non deve essere letta immediatamente ma solo nel caso in cui sia necessario il stream
.Converti InputStream in Streaming <String> dato un set di caratteri
risposta
penso che si può provare:
Stream<String> lines = new BufferedReader(new InputStreamReader(is, cs)).lines();
@Pshemo Grazie per la modifica! :) –
C'è un modo per disconnettere automaticamente HttpURLConnection dopo che è stato letto l'InputStream completo? –
Puoi leggere lo stream in un'istruzione 'try-with-resources' ed eventualmente aggiungere un blocco' finally' che chiama 'disconnect()' sull'oggetto 'HttpURLConnection': http://docs.oracle.com/javase/ 7/docs/api/java/net/HttpURLConnection.html # disconnect() –
E che cosa hai provato? Le domande devono mostrare lo sforzo includendo un tentativo o una ricerca –
Deve essere 'InputStream'? Se avete intenzione di leggere i file, potete usare 'Files.lines (Path path, Charset cs)'. Puoi dare un'occhiata al codice sorgente di questo metodo per capire la tua soluzione. – Pshemo
Nel mio caso è InputStream proveniente da 'HttpURLConnection # getInputStream()'. –