Como salvar um Stream em um arquivo em C#? Maneiras corretas e exemplos
Olá a todos! Sou um desenvolvedor C# iniciante e me deparei com a seguinte tarefa: tenho um objeto do tipo `Stream` (por exemplo, obtido de uma requisição HTTP ou da memória) e preciso salvar todo o seu conteúdo em um arquivo no disco.
Primeiro, tentei a maneira mais simples: ler o stream em um array de bytes usando `Read()` e depois escrever com `File.WriteAllBytes`. Aqui está meu código:
public void SaveStreamToFile(Stream inputStream, string filePath)
{
byte[] buffer = new byte[inputStream.Length];
inputStream.Read(buffer, 0, buffer.Length);
File.WriteAllBytes(filePath, buffer);
}
Mas esse código falha com erro se o stream não suporta posicionamento (por exemplo, um stream de rede). Além disso, li que arquivos grandes podem ter problemas de memória. No answers yet.
Faça login para deixar uma resposta