ImageMagick.StreamHelper.ToByteArray C# (CSharp) Метод

ToByteArray() статический приватный Метод

static private ToByteArray ( Stream stream ) : byte[]
stream Stream
Результат byte[]
    internal static byte[] ToByteArray(Stream stream)
    {
      Throw.IfNull(nameof(stream), stream);

      MemoryStream memStream = stream as MemoryStream;
      if (memStream != null)
      {
        try
        {
          return memStream.GetBuffer();
        }
        catch (UnauthorizedAccessException)
        {
          return memStream.ToArray();
        }
      }

      if (stream.CanSeek)
      {
        if (stream.Length == 0)
          return new byte[0];

        CheckLength(stream.Length);

        int length = (int)stream.Length;
        byte[] result = new byte[length];
        int read = 0;
        int bytesRead = 0;
        while ((bytesRead = stream.Read(result, read, length - read)) != 0)
        {
          read += bytesRead;
        }

        return result;
      }

      int bufferSize = 8192;
      using (MemoryStream tmpStream = new MemoryStream())
      {
        byte[] buffer = new byte[bufferSize];
        int length;
        while ((length = stream.Read(buffer, 0, bufferSize)) != 0)
        {
          CheckLength(tmpStream.Length + length);

          tmpStream.Write(buffer, 0, length);
        }

        return tmpStream.ToArray();
      }
    }
  }

Usage Example

Пример #1
0
        ///<summary>
        /// Initializes a new instance of the ImageProfile class.
        ///</summary>
        ///<param name="name">The name of the profile.</param>
        ///<param name="stream">A stream containing the profile.</param>
        public ImageProfile(string name, Stream stream)
        {
            Throw.IfNullOrEmpty(nameof(name), name);

            Name = name;
            Data = StreamHelper.ToByteArray(stream);
        }
All Usage Examples Of ImageMagick.StreamHelper::ToByteArray