System.IO.ChunkedMemoryStream.Read C# (CSharp) Méthode

Read() public méthode

public Read ( byte buffer, int offset, int count ) : int
buffer byte
offset int
count int
Résultat int
		public override int Read(byte[] buffer, int offset, int count)
		{
			int result = 0;
			while ((count != 0) && (_positionChunk != _chunks.Count) && Position < Length)
			{
				int fromChunk = Math.Min(count, _chunks[_positionChunk].Length - _positionOffset);
				if (fromChunk != 0)
				{
					Array.Copy(_chunks[_positionChunk], _positionOffset, buffer, offset, fromChunk);
					offset += fromChunk;
					count -= fromChunk;
					result += fromChunk;
					_positionOffset += fromChunk;
				}
				else
				{
					_positionOffset = 0;
					_positionChunk++;
				}
			}
			return result;
		}