Class BcpgOutputStream
- Namespace
- Org.BouncyCastle.Bcpg
- Assembly
- BouncyCastle.Cryptography.dll
public class BcpgOutputStream : BaseOutputStream, IAsyncDisposable, IDisposable
- Inheritance
-
BcpgOutputStream
- Implements
- Inherited Members
Remarks
Basic output stream.
Constructors
BcpgOutputStream(Stream)
Create a stream representing a general packet.
public BcpgOutputStream(Stream outStr)
Parameters
outStrStreamOutput stream to write to.
BcpgOutputStream(Stream, PacketTag)
Create a stream representing an old style partial object.
public BcpgOutputStream(Stream outStr, PacketTag tag)
Parameters
BcpgOutputStream(Stream, PacketTag, byte[])
Create a new style partial input stream buffered into chunks.
public BcpgOutputStream(Stream outStr, PacketTag tag, byte[] buffer)
Parameters
outStrStreamOutput stream to write to.
tagPacketTagPacket tag.
bufferbyte[]Buffer to use for collecting chunks.
BcpgOutputStream(Stream, PacketTag, long)
Create a new style partial input stream buffered into chunks.
public BcpgOutputStream(Stream outStr, PacketTag tag, long length)
Parameters
outStrStreamOutput stream to write to.
tagPacketTagPacket tag.
lengthlongSize of chunks making up the packet.
BcpgOutputStream(Stream, PacketTag, long, bool)
Create a stream representing a general packet.
public BcpgOutputStream(Stream outStr, PacketTag tag, long length, bool oldFormat)
Parameters
outStrStreamOutput stream to write to.
tagPacketTagPacket tag.
lengthlongSize of chunks making up the packet.
oldFormatboolIf true, the header is written out in old format.
BcpgOutputStream(Stream, bool)
Base constructor specifying whether or not to use packets in the new format wherever possible.
public BcpgOutputStream(Stream outStr, bool newFormatOnly)
Parameters
outStrStreamOutput stream to write to.
newFormatOnlybooltrueif use new format packets,falseif backwards compatible preferred.
Methods
Dispose(bool)
Releases the unmanaged resources used by the Stream and optionally releases the managed resources.
protected override void Dispose(bool disposing)
Parameters
disposingbooltrue to release both managed and unmanaged resources; false to release only unmanaged resources.
Finish()
Finish writing out the current packet without closing the underlying stream.
public void Finish()
Flush()
Flush the underlying stream.
public override void Flush()
Write(byte[], int, int)
When overridden in a derived class, writes a sequence of bytes to the current stream and advances the current position within this stream by the number of bytes written.
public override void Write(byte[] buffer, int offset, int count)
Parameters
bufferbyte[]An array of bytes. This method copies
countbytes frombufferto the current stream.offsetintThe zero-based byte offset in
bufferat which to begin copying bytes to the current stream.countintThe number of bytes to be written to the current stream.
Exceptions
- ArgumentException
The sum of
offsetandcountis greater than the buffer length.- ArgumentNullException
bufferis null.- ArgumentOutOfRangeException
offsetorcountis negative.- IOException
An I/O error occurred, such as the specified file cannot be found.
- NotSupportedException
The stream does not support writing.
- ObjectDisposedException
Write(byte[], int, int) was called after the stream was closed.
Write(ReadOnlySpan<byte>)
When overridden in a derived class, writes a sequence of bytes to the current stream and advances the current position within this stream by the number of bytes written.
public override void Write(ReadOnlySpan<byte> buffer)
Parameters
bufferReadOnlySpan<byte>A region of memory. This method copies the contents of this region to the current stream.
WriteByte(byte)
Writes a byte to the current position in the stream and advances the position within the stream by one byte.
public override void WriteByte(byte value)
Parameters
valuebyteThe byte to write to the stream.
Exceptions
- IOException
An I/O error occurs.
- NotSupportedException
The stream does not support writing, or the stream is already closed.
- ObjectDisposedException
Methods were called after the stream was closed.
WriteObject(BcpgObject)
public void WriteObject(BcpgObject bcpgObject)
Parameters
bcpgObjectBcpgObject
WriteObjects(params BcpgObject[])
public void WriteObjects(params BcpgObject[] v)
Parameters
vBcpgObject[]
WritePacket(ContainedPacket)
public void WritePacket(ContainedPacket p)