2009-12-11 4 views
0

Dans Java 1.5, comment puis-je cloner une instance de java.io.CharArrayWriter?Comment cloner un CharArrayWriter?

CharArrayWriter x = new CharArrayWriter(200); 
x.write("foo bar bob"); 

CharArrayWriter y = x.clone(); // Object.clone() is not visible!! 

Merci,
mobiGeek

Répondre

4

Il n'y a pas de méthode clone, mais vous pouvez utiliser la méthode writeTo.

CharArrayWriter copy = new CharArrayWriter(x.size()); 
x.writeTo(copy); 
+0

Génial! Merci! – mobiGeek

0

CharArrayWriter n'est pas cloneable. En fonction de vos besoins réels que vous pouvez faire avec la même:

CharArrayWriter y = new CharArrayWriter(); 
y.write(x.toCharArray()); 

Ce qui est essentiellement la même chose.

+0

writeTo() est une meilleure solution car elle évite une copie de tableau supplémentaire. – PSpeed

+0

Faux. CharArrayWriter étend Writer qui a une méthode write (char []). Vérifiez les docs ... et toute autre personne qui m'a rejeté sur ce point. ;) – PSpeed