Freigeben über


ToBase64Transform.TransformBlock-Methode

Wandelt den angegebenen Bereich des Eingabebytearrays in Base-64 um und kopiert das Ergebnis in den angegebenen Bereich des Ausgabebytearrays.

Namespace: System.Security.Cryptography
Assembly: mscorlib (in mscorlib.dll)

Syntax

'Declaration
Public Function TransformBlock ( _
    inputBuffer As Byte(), _
    inputOffset As Integer, _
    inputCount As Integer, _
    outputBuffer As Byte(), _
    outputOffset As Integer _
) As Integer
'Usage
Dim instance As ToBase64Transform
Dim inputBuffer As Byte()
Dim inputOffset As Integer
Dim inputCount As Integer
Dim outputBuffer As Byte()
Dim outputOffset As Integer
Dim returnValue As Integer

returnValue = instance.TransformBlock(inputBuffer, inputOffset, inputCount, outputBuffer, outputOffset)
public int TransformBlock (
    byte[] inputBuffer,
    int inputOffset,
    int inputCount,
    byte[] outputBuffer,
    int outputOffset
)
public:
virtual int TransformBlock (
    array<unsigned char>^ inputBuffer, 
    int inputOffset, 
    int inputCount, 
    array<unsigned char>^ outputBuffer, 
    int outputOffset
) sealed
public final int TransformBlock (
    byte[] inputBuffer, 
    int inputOffset, 
    int inputCount, 
    byte[] outputBuffer, 
    int outputOffset
)
public final function TransformBlock (
    inputBuffer : byte[], 
    inputOffset : int, 
    inputCount : int, 
    outputBuffer : byte[], 
    outputOffset : int
) : int

Parameter

  • inputBuffer
    Die in Base-64 zu konvertierende Eingabe.
  • inputOffset
    Der Offset im Eingabebytearray, ab dem Daten verwendet werden sollen.
  • inputCount
    Die Anzahl der Bytes im Eingabebytearray, die als Daten verwendet werden sollen.
  • outputBuffer
    Die Ausgabe, in die das Ergebnis geschrieben werden soll.
  • outputOffset
    Der Offset im Ausgabebytearray, ab dem Daten geschrieben werden sollen.

Rückgabewert

Die Anzahl der geschriebenen Bytes.

Ausnahmen

Ausnahmetyp Bedingung

ObjectDisposedException

Die aktuelle ToBase64Transform wurde bereits freigegeben.

CryptographicException

Die Datengröße ist ungültig.

Hinweise

Die ToBase64Transform-Klasse ist ein Blockalgorithmus, der Eingabeblöcke von 3 Bytes verarbeitet und Ausgabeblöcke von 4 Bytes erstellt. Die TransformBlock-Methode transformiert einen Eingabeblock von 24 Bits in 32 Bits Zeichendaten. Sie müssen die 3-Byte-Eingabebegrenzungen zu 4-Byte-Ausgabebegrenzungen beibehalten, damit mit der Blocktransformation Übereinstimmung besteht.

Beispiel

Im folgenden Codebeispiel wird veranschaulicht, wie die TransformBlock-Methode aufgerufen wird, um inputBytes zu durchlaufen und dabei eine Transformation anhand von blockSize auszuführen. Dieses Codebeispiel ist Teil eines umfangreicheren Beispiels für die ToBase64Transform-Klasse.

Dim inputBlockSize As Integer = base64Transform.InputBlockSize

While (inputBytes.Length - inputOffset > inputBlockSize)
    base64Transform.TransformBlock( _
        inputBytes, _
        inputOffset, _
        inputBytes.Length - inputOffset, _
        outputBytes, _
        0)

    inputOffset += base64Transform.InputBlockSize
    outputFileStream.Write(outputBytes, _
        0, _
        base64Transform.OutputBlockSize)
End While
int inputBlockSize = base64Transform.InputBlockSize;

while(inputBytes.Length - inputOffset > inputBlockSize)
{
    base64Transform.TransformBlock(
        inputBytes,
        inputOffset,
        inputBytes.Length - inputOffset,
        outputBytes,
        0);

    inputOffset += base64Transform.InputBlockSize;
    outputFileStream.Write(
        outputBytes, 
        0, 
        base64Transform.OutputBlockSize);
}
int inputBlockSize = base64Transform->InputBlockSize;
while ( inputBytes->Length - inputOffset > inputBlockSize )
{
   base64Transform->TransformBlock(
      inputBytes,
      inputOffset,
      inputBytes->Length - inputOffset,
      outputBytes,
      0 );

   inputOffset += base64Transform->InputBlockSize;
   outputFileStream->Write(
      outputBytes,
      0,
      base64Transform->OutputBlockSize );
}
int inputBlockSize = base64Transform.get_InputBlockSize();
while (inputBytes.get_Length() - inputOffset > inputBlockSize) {
    base64Transform.TransformBlock(inputBytes, inputOffset, 
        inputBytes.get_Length() - inputOffset, outputBytes, 0);
    inputOffset += base64Transform.get_InputBlockSize();
    outputFileStream.Write(outputBytes, 0, base64Transform.
        get_OutputBlockSize());
}

Plattformen

Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.

Versionsinformationen

.NET Framework

Unterstützt in: 2.0, 1.1, 1.0

Siehe auch

Referenz

ToBase64Transform-Klasse
ToBase64Transform-Member
System.Security.Cryptography-Namespace

Weitere Ressourcen

Kryptografische Dienste