CmisSync.Lib.Streams.OffsetStream.SetLength C# (CSharp) Метод

SetLength() публичный Метод

Sets the length to the given length. It must be greater than the Offset
public SetLength ( long length ) : void
length long /// The new Length ///
Результат void
        public override void SetLength(long length) {
            if (length < this.Offset) {
                throw new ArgumentOutOfRangeException(string.Format("Given length {0} is smaller than Offset {1}", length, this.Offset));
            }

            this.Stream.SetLength(length - this.Offset);
        }
        #endregion

Usage Example

Пример #1
0
        public void LengthTest() {
            // static length test
            using (MemoryStream memstream = new MemoryStream(this.content))
            using (OffsetStream offsetstream = new OffsetStream(memstream, this.offset)) {
                Assert.AreEqual(this.offset + this.content.Length, offsetstream.Length);
            }

            // dynamic length test
            using (MemoryStream memstream = new MemoryStream())
            using (OffsetStream offsetstream = new OffsetStream(memstream, this.offset)) {
                Assert.AreEqual(0, memstream.Length);
                Assert.AreEqual(this.offset, offsetstream.Length);
                offsetstream.SetLength(200);
                Assert.AreEqual(200, offsetstream.Length);
                Assert.AreEqual(200 - this.offset, memstream.Length);
                Assert.Throws<ArgumentOutOfRangeException>(() => offsetstream.SetLength(50));
                Assert.AreEqual(200, offsetstream.Length);
                Assert.AreEqual(200 - this.offset, memstream.Length);
            }
        }