ToBase64Transform.TransformBlock(Byte[], Int32, Int32, Byte[], Int32) Metode
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Mengonversi wilayah yang ditentukan dari array byte input ke basis 64 dan menyalin hasilnya ke wilayah yang ditentukan dari array byte output.
public:
virtual int TransformBlock(cli::array <System::Byte> ^ inputBuffer, int inputOffset, int inputCount, cli::array <System::Byte> ^ outputBuffer, int outputOffset);
public int TransformBlock (byte[] inputBuffer, int inputOffset, int inputCount, byte[] outputBuffer, int outputOffset);
abstract member TransformBlock : byte[] * int * int * byte[] * int -> int
override this.TransformBlock : byte[] * int * int * byte[] * int -> int
Public Function TransformBlock (inputBuffer As Byte(), inputOffset As Integer, inputCount As Integer, outputBuffer As Byte(), outputOffset As Integer) As Integer
Parameter
- inputBuffer
- Byte[]
Input untuk menghitung ke basis 64.
- inputOffset
- Int32
Offset ke dalam array byte input untuk mulai menggunakan data.
- inputCount
- Int32
Jumlah byte dalam array byte input untuk digunakan sebagai data.
- outputBuffer
- Byte[]
Output untuk menulis hasilnya.
- outputOffset
- Int32
Offset ke dalam array byte output untuk mulai menulis data.
Mengembalikan
Jumlah byte yang ditulis.
Penerapan
Pengecualian
Objek ToBase64Transform saat ini telah dibuang.
Ukuran data tidak valid.
Parameter inputOffset
berisi panjang offset yang tidak valid.
-atau-
Parameter inputCount
berisi nilai yang tidak valid.
Parameter inputBuffer
null
.
Parameter inputCount
memerlukan angka non-negatif dan kurang dari atau sama dengan panjang inputBuffer
.
Contoh
Contoh kode berikut menunjukkan cara memanggil metode TransformBlock untuk melakukan iterasi melalui transformasi inputBytes
dengan blockSize
. Contoh kode ini adalah bagian dari contoh yang lebih besar yang disediakan untuk kelas ToBase64Transform.
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);
}
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
Keterangan
Kelas ToBase64Transform adalah algoritma blok yang memproses blok input 3 byte dan membuat blok output 4 byte. Metode TransformBlock mengubah blok input 24 bit menjadi 32 bit data karakter. Anda harus mempertahankan 3 batas input byte hingga 4 batas output byte agar sesuai dengan transformasi blok.
Berlaku untuk
Lihat juga
- Layanan Kriptografi