Сохранить поток как изображение

Как сохранить поток как изображение и сохранить изображение в файлах temp?

Ответ 1

Попробуйте

Image img = System.Drawing.Image.FromStream(myStream);

img.Save(System.IO.Path.GetTempPath() + "\\myImage.Jpeg", ImageFormat.Jpeg);

Ответ 2

var tempFile = Path.GetTempFileName();
using (var fs = File.Create(tempFile))
{
   source.copyTo(fs);
}

где источником является поток источника. Теперь исходный поток сохраняется в временном расположении (заданном tempFile). Обратите внимание, что расширение имени файла будет TMP.

Ответ 3

Посмотрите Bitmap Class. Там есть перегрузка конструктора, которая принимает параметр Stream как параметр, и существует метод Сохранить, который вы можете использовать для сохранения в виде файла.

Ответ 4

В приведенном ниже коде ваш поток (изображение) stream.

using (Stream output = new FileStream ("mycat.jpg"))
{
    byte[] buffer = new byte[32*1024];
    int read;

    while ( (read=stream.Read(buffer, 0, buffer.Length)) > 0)
    {
        output.Write(buffer, 0, read);
    }
}

Этот код защищен авторским правом Jon Skeet Мой вклад - это имя файла;)

Ответ 5

Для Windows Phone 8.1 я нашел следующее, чтобы работать хорошо. Создайте свой TempStorageFile по любому пути, который вы хотите, а затем пропустите в своем потоке изображения так:

var fileStream = await TempStorageFile.OpenAsync(Windows.Storage.FileAccessMode.ReadWrite);
            await RandomAccessStream.CopyAsync(imageStream, fileStream);

Ответ 6

я использовал yawcam в windows 10, чтобы динамически переписать фон jpg с моего сайта WordPress с помощью видеовхода из потока obs с виртуальным camplugin, показывающим локальную ipcam live image-, но, похоже, он больше не запускается даже с самой новой java