CSharpTest.Net
Safe64Stream Constructor
See Also  Example Send Feedback Download Help File
CSharpTest.Net.Library Assembly > CSharpTest.Net.Formatting Namespace > Safe64Stream Class : Safe64Stream Constructor

stream
mode

Glossary Item Box

Provides reading and writing to a stream of base-64 characters while replacing '+' with '-' and '/' with '_' and ommitting padding.

Syntax

Visual Basic (Declaration) 
Public Function New( _
   ByVal stream As Stream, _
   ByVal mode As CryptoStreamMode _
)
C# 
public Safe64Stream( 
   Stream stream,
   CryptoStreamMode mode
)

Parameters

stream
mode

Example

Library/Library.Test/TestSafe64Encoding.cs

C#Copy Code
byte[] data = new byte[222];
new Random().NextBytes(data);
using (Stream mem = new MemoryStream())
{
    using (Stream io = new Safe64Stream(new NonClosingStream(mem), CryptoStreamMode.Write))
        io.Write(data, 0, data.Length);


    Assert.AreEqual((long)Math.Ceiling((data.Length * 8) / 6d), mem.Position);
    mem.Position = 0;
    string test = new StreamReader(mem).ReadToEnd();
    Assert.AreEqual(Safe64Encoding.EncodeBytes(data), test);
}
VB.NETCopy Code
Dim data As Byte() = New Byte(222) {}
New Random().NextBytes(data)
Using mem As Stream = New MemoryStream()
    Using io As Stream = New Safe64Stream(New NonClosingStream(mem), CryptoStreamMode.Write)
        io.Write(data, 0, data.Length)
    End Using


    Assert.AreEqual(DirectCast(Math.Ceiling((data.Length * 8) / 6.0), Long), mem.Position)
    mem.Position = 0
    Dim test As String = New StreamReader(mem).ReadToEnd()
    Assert.AreEqual(Safe64Encoding.EncodeBytes(data), test)
End Using

Requirements

Target Platforms: Windows XP, Windows Server 2003, Windows Vista, Windows Server 2008, Windows 7

See Also

Generated with Document! X 2011 by Innovasys