Ho intenzione di utilizzare la funzione markSupported per controllare il primo byte per verificare il formato e quindi resettarlo, per favore dimmi quale stream deve essere usato per la comunicazione basata su TCP in java. Per la maggior parte dei flussi come datainputstream non fornisce questa funzionalità. Si prega di darmi alcuni suggerimenti per utilizzare mark e reset.Come usare markSupported feature di inputstream java
risposta
È possibile utilizzare uno BufferedInputStream
intorno a qualsiasi altro flusso che si ha. Questo è garantito per supportare mark/reset, a condizione che non si cerchi di leggere oltre la dimensione del buffer dopo la marcatura.
Dai uno sguardo allo PushbackInputStream, che sembra sia stato progettato per fare ciò che desideri.
Completa un flusso di input esistente e consente di leggere un byte e quindi di reinserirlo. Da Javadoc:
Un PushbackInputStream aggiunge funzionalità a un altro flusso di input, ovvero la possibilità di "respingere" o "non letto" un byte. Ciò è utile in situazioni in cui è conveniente che un frammento di codice legga un numero indefinito di byte di dati che sono delimitati da un particolare valore di byte; dopo aver letto il byte di terminazione, il frammento di codice può "non leggerlo", in modo che la successiva operazione di lettura sul flusso di input rileggerà il byte che è stato richiamato indietro. Ad esempio, i byte che rappresentano i caratteri che costituiscono un identificatore potrebbero essere terminati da un byte che rappresenta un carattere operatore; un metodo il cui compito è leggere solo un identificatore può leggere fino a quando vede l'operatore e quindi spingere indietro l'operatore per essere riletto.
mai notato questa classe !!! Mi piace imparare! – dfa
- 1. Dimensioni InputStream Java
- 2. Java InputStream attendere i dati.
- 3. Come clonare un inputstream in java in un tempo minimo
- 4. Java networking: evented Socket/InputStream
- 5. Come eseguire una copia profonda di un InputStream in Java
- 6. java stampa InputStream per consolare il contenuto
- 7. Estrazione di feature audio
- 8. Devo chiudere un InputStream in Java?
- 9. Come gestire xml/html nel flusso di lavoro della feature feature git?
- 10. Chiusura corretta di InputStream di processo Java da getInputStream
- 11. Come si converte un InputStream in una stringa in Java?
- 12. Java: come posso ottenere la codifica da inputStream?
- 13. Come inviare InputStream a ProcessBuilder
- 14. Estrazione di feature con Javascript
- 15. Creazione di un InputStream Java da un enumeratore [Array [Byte]]
- 16. Stampa di un InputStream Java da un processo
- 17. Eclipse - creazione di un progetto di feature
- 18. La differenza di `InputStream`` DataInputStream` e `BufferedInputStream` in java?
- 19. Come convertire un oggetto in Inputstream
- 20. java - Come usare Tor coniugare con Java
- 21. Come convertire InputStream in Source?
- 22. Come impostare il contenuto di InputStream Lunghezza
- 23. Come convertire InputStream per FileInputStream
- 24. Reading InputStream come UTF-8
- 25. Caricamento da JAR come InputStream?
- 26. InputStream vs InputStreamReader
- 27. Come usare FFMPEG con java?
- 28. Come leggere un InputStream con UTF-8?
- 29. come usare java con go
- 30. Come usare DANE con Java?
+1 Perché ho bisogno di una ricerca su google e una domanda tangenzialmente correlata per risolvere un problema la cui soluzione è denominata e documentata in modo intuitivo? Ah i misteri della mente umana .... –