Lutinore
Messages postés3245Date d'inscriptionlundi 25 avril 2005StatutMembreDernière intervention27 octobre 2012
-
1 déc. 2007 à 15:51
Lutinore
Messages postés3245Date d'inscriptionlundi 25 avril 2005StatutMembreDernière intervention27 octobre 2012
-
2 déc. 2007 à 16:57
Salut, je suis surpris de ne pas trouver dans le framework une fonction pour enregistrer un stream dans un fichier.. Avant de poster le code suivant sur Codyx, je voulais savoir si vous voyez une autre méthode ?
if ( String.IsNullOrEmpty( outputFile ) )
throw new ArgumentException( "Argument null or empty.", "outputFile" );
using ( FileStream outputStream = new FileStream( outputFile, fileMode, FileAccess.Write ) )
{
int cnt = 0;
const int LEN = 4096;
byte[ ] buffer = new byte[ LEN ];
cs_niky
Messages postés168Date d'inscriptionjeudi 28 juin 2001StatutMembreDernière intervention18 octobre 20087 2 déc. 2007 à 15:24
Salut,
L'ennui avec un Stream, c'est qu'il peut très bien ne jamais finir (par exemple un flux d'une radio web). Dans ce cas, le copier dans un fichier peut poser des problèmes.
Si ton flux est un fichier, autant copier directement le fichier (System.IO.File.Copy).
Dans tous les autres cas, le code que tu proposes est une solution.
cs_coq
Messages postés6349Date d'inscriptionsamedi 1 juin 2002StatutMembreDernière intervention 2 août 2014101 2 déc. 2007 à 15:33
Salut,
Heu, pas mieux :-)
En tout cas l'absence de méthode dédiée à ce genre de tâche dans le formework ne me choque pas plus que ça, ça ne serait pas forcément très utilisé.
Après tout dans beaucoup de cas, notamment sur tout ce qui est *Writer, on spécifie/peut spécifier soit même le Stream sous-jacent, et du coup directement fournir le FileStream adéquat.
Sinon dans le cas particulier de MemoryStream, on a la méthode WriteTo, mais il est vrai que ce n'est pas dédié à l'écriture du fichier.
Lutinore
Messages postés3245Date d'inscriptionlundi 25 avril 2005StatutMembreDernière intervention27 octobre 201241 2 déc. 2007 à 16:57
Merci pour vos réponses.. en fait la question s'est posée quand j'ai du sauvegarder le stream ( ConnectStream ) renvoyé par la methode HttpWebResponse.GetResponseStream( ) .