[java] doubler un inputStream

Fermé
karine - 25 mai 2005 à 14:14
jebok Messages postés 358 Date d'inscription lundi 16 mai 2005 Statut Membre Dernière intervention 23 octobre 2007 - 25 mai 2005 à 16:14
Bonjour,

je voulais savoir comment, à partir d'un inputstream, en obtenir deux identiques. Bref, le doubler.

Merci !
A voir également:

6 réponses

Non, apparemment on ne peut pas affecter comme ça un inputStream.

Mais merci quand même.
1
jebok Messages postés 358 Date d'inscription lundi 16 mai 2005 Statut Membre Dernière intervention 23 octobre 2007 51
25 mai 2005 à 15:21
je ne comprends pas très bien.
Que veux tu dire quand tu dis "on ne peut plus affecter comme ca un inputstream" ???

Que veux-tu faire exactement ?
0
jebok Messages postés 358 Date d'inscription lundi 16 mai 2005 Statut Membre Dernière intervention 23 octobre 2007 51
25 mai 2005 à 14:52
Si j'ai bien compris ce que tu veux faire, c'est tout simple :
Par exemple :

InputStream in1 = new InputStream(monFichier);
InputStream in2 = new InputStream(monFichier);


--------
ou alors si tu as déjà in1 qui est un InputStream, tu fais :
InputStream in2 = in1;


Est-ce que ca resoud ton problème ?
0
Je veux dire qu'écrire InputStream in2 = in1; ne fonctionne pas.

in2 reste vide.

Mais sinon tu as bien compris ce que je voulais faire. Je voulais avoir deux inputStream contenant la meme chose.

Merci quand meme
0
Si tu reponds à mon message, je repondrais au tien !!
0
jebok Messages postés 358 Date d'inscription lundi 16 mai 2005 Statut Membre Dernière intervention 23 octobre 2007 51
25 mai 2005 à 15:30
je viens de trouver une solution à ton problème :

tu fais :

InputStream in2 = in1.clone();
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
j'ai essayé clone,
j'ai une erreur clone() has protected access in java.lang.Object

je sais pas trop ce que ça veut dire ...
0
rameur Messages postés 135 Date d'inscription lundi 8 avril 2002 Statut Membre Dernière intervention 21 janvier 2009 21
25 mai 2005 à 16:09
ca veut dire tout simplement que la methode clone a ete definie comme protected dans la classe object, donc les classes heritieres et du meme package peuvent l'appeler directement mais pas les autres,
donc pour resumer si tu veux l'utiliser il faudra que tu etendes la classe InputStream et que tu declares clone() public dansla nouvelle classe ensuite tu peux l'utiliser...

class NInputStream extends java.io.InputStream {

public Object clone() {

return super.clone();
}
}
0
jebok Messages postés 358 Date d'inscription lundi 16 mai 2005 Statut Membre Dernière intervention 23 octobre 2007 51
25 mai 2005 à 16:14
InputStream extends Object donc normalement c possible d'utiliser directement une méthode protected, non ?
0