Dupliqué possible: strong>
Convertir un flux en FileStream en C # p> blockQuote>Ma question concerne le casting du flux à filtream ... p>
Fondamentalement, je dois faire cela pour obtenir le nom du fichier, car si je n'ai qu'un flux d'objet, il n'a pas la propriété de nom, lorsque FileStream fait ... p>
Alors, comment le faire correctement, comment lancer un objet de flux à filtream ... p>
Un autre problème est que ce flux vient de Webresponse.GetResponsestream () et si je le jette à filtream, je le reçois vide. Fondamentalement, je pourrais également utiliser le flux, mais j'ai besoin d'obtenir le nom de fichier. P>
J'utilise 3.5 P>
Des idées? P>
3 Réponses :
Utilisez l'opérateur comme code> pour effectuer la distribution, si le flux code> code> n'est pas réellement un
filtream code>,
null code> sera retourné au lieu de jeter une exception.
En supposant que le flux est en fait un flux de fichiers, les éléments suivants doivent faire l'astuce:
var name = ((FileStream)stream).Name;
option 1. Si vous êtes sûr, que option 2. Si vous " Re pas em> sûr, que greve code> objet est un
filtream code>:
L'objet code> est un
filtream code>, mais si tel est le cas, il sera utile: P>
var fileStream = stream as FileStream;
if (fileStream != null)
{
// specific stuff here
}
Lire: Stackoverflow.com/Questtions/3769067/...
Que voudriez-vous faire si le flux n'est pas réellement i> A
filtream code>?
Si vous utilisez .NET 4.0, utilisez flux.copyto (). Doc: msdn.microsoft.com/en-us/library/dd182932.aspx < / a>