Bonjour,
J'ai le probl�me suivant : je souhaite pouvoir lire 2 fois un InputStream
dans son int�gralit�.
J'ai essay� pour ce faire d'utiliser la classe BufferedInputStream, avec les
m�thodes mark et reset.
Voici mon code :
java.io.BufferedInputStream oBufStream = new
java.io.BufferedInputStream(aStream);
System.out.println("taille : " + oBufStream.available());
oBufStream.read();
oBufStream.mark(1494);
oBufStream.reset();
System.out.println("taille : " + oBufStream.available());
/* premiere lecture de mon InputStream */
mIdentifiantsMessage.read(oBufStream);
/* remise jusqu'� la marque de mon stream */
oBufStream.reset();
/* deuxieme lecture */
mObjetsMessage.read(oBufStream);
Le r�sultat de ce code affiche :
taille : 1493
taille 1492.
C'est � dire que je perd le premier caract�re de mon flux pour pouvoir le
marquer. Du coup, derri�re, mon traitement plante.
Si je ne mets pas de read() sur mon flux, alors apr�s la premi�re lecture,
le flux est ferm�, et je ne peux plus le re-lire.
Quelqu'un aurait il une id�e pour pouvoir lire le m�me flux dans son
int�gralit� 2 fois ?
Merci d'avance,
Fabien.