다음을 통해 공유


Buffer.ByteLength(Array) 메서드

정의

지정된 배열의 바이트 수를 반환합니다.

public:
 static int ByteLength(Array ^ array);
public static int ByteLength (Array array);
static member ByteLength : Array -> int
Public Shared Function ByteLength (array As Array) As Integer

매개 변수

array
Array

배열입니다.

반환

Int32

배열의 바이트 수입니다.

예외

array이(가) null인 경우

array가 기본 형식이 아닌 경우

array가 2GB보다 큰 경우

예제

다음 코드 예제에서는 배열의 ByteLength 바이트 수를 반환 하는 메서드의 사용을 보여 줍니다.

// Example of the Buffer::ByteLength method.
using namespace System;

void ArrayInfo( Array^ arr, String^ name )
{
   int byteLength = Buffer::ByteLength( arr );
   
   // Display the array name, type, Length, and ByteLength.
   Console::WriteLine( "{0,10}{1,20}{2,9}{3,12}", name, arr->GetType(), arr->Length, byteLength );
}

int main()
{
   array<unsigned char>^bytes = {1,2,3,4,5,6,7,8,9,0};
   array<bool>^bools = {true,false,true,false,true};
   array<Char>^chars = {' ','$','\"','A','{'};
   array<short>^shorts = {258,259,260,261,262,263};
   array<float>^singles = {1,678,2.37E33F,.00415F,8.9F};
   array<double>^doubles = {2E-22,.003,4.4E44,555E55};
   array<long>^longs = {1,10,100,1000,10000,100000};
   Console::WriteLine( "This example of the Buffer::ByteLength( Array* ) "
   "\nmethod generates the following output.\n" );
   Console::WriteLine( "{0,10}{1,20}{2,9}{3,12}", "Array name", "Array type", "Length", "ByteLength" );
   Console::WriteLine( "{0,10}{1,20}{2,9}{3,12}", "----------", "----------", "------", "----------" );
   
   // Display the Length and ByteLength for each array.
   ArrayInfo( bytes, "bytes" );
   ArrayInfo( bools, "bools" );
   ArrayInfo( chars, "chars" );
   ArrayInfo( shorts, "shorts" );
   ArrayInfo( singles, "singles" );
   ArrayInfo( doubles, "doubles" );
   ArrayInfo( longs, "longs" );
}

/*
This example of the Buffer::ByteLength( Array* )
method generates the following output.

Array name          Array type   Length  ByteLength
----------          ----------   ------  ----------
     bytes       System.Byte[]       10          10
     bools    System.Boolean[]        5           5
     chars       System.Char[]        5          10
    shorts      System.Int16[]        6          12
   singles     System.Single[]        5          20
   doubles     System.Double[]        4          32
     longs      System.Int32[]        6          24
*/
// Example of the Buffer.ByteLength method.
using System;

class ByteLengthDemo
{
    const string formatter = "{0,10}{1,20}{2,9}{3,12}";

    public static void ArrayInfo( Array arr, string name )
    {
        int byteLength = Buffer.ByteLength( arr );

        // Display the array name, type, Length, and ByteLength.
        Console.WriteLine( formatter, name, arr.GetType( ),
            arr.Length, byteLength );
    }

    public static void Main( )
    {
        byte[ ]   bytes   = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 0 };
        bool[ ]   bools   = { true, false, true, false, true };
        char[ ]   chars   = { ' ', '$', '\"', 'A', '{' };
        short[ ]  shorts  = { 258, 259, 260, 261, 262, 263 };
        float[ ]  singles = { 1, 678, 2.37E33F, .00415F, 8.9F };
        double[ ] doubles = { 2E-22, .003, 4.4E44, 555E55 };
        long[ ]   longs   = { 1, 10, 100, 1000, 10000, 100000 };

        Console.WriteLine(
            "This example of the Buffer.ByteLength( Array ) " +
            "\nmethod generates the following output.\n" );
        Console.WriteLine( formatter, "Array name", "Array type",
            "Length", "ByteLength" );
        Console.WriteLine( formatter, "----------", "----------",
            "------", "----------" );

        // Display the Length and ByteLength for each array.
        ArrayInfo( bytes, "bytes" );
        ArrayInfo( bools, "bools" );
        ArrayInfo( chars, "chars" );
        ArrayInfo( shorts, "shorts" );
        ArrayInfo( singles, "singles" );
        ArrayInfo( doubles, "doubles" );
        ArrayInfo( longs, "longs" );
    }
}

/*
This example of the Buffer.ByteLength( Array )
method generates the following output.

Array name          Array type   Length  ByteLength
----------          ----------   ------  ----------
     bytes       System.Byte[]       10          10
     bools    System.Boolean[]        5           5
     chars       System.Char[]        5          10
    shorts      System.Int16[]        6          12
   singles     System.Single[]        5          20
   doubles     System.Double[]        4          32
     longs      System.Int64[]        6          48
*/
open System

let print obj1 obj2 obj3 obj4 = 
    printfn $"{obj1,10}{obj2,20}{obj3,9}{obj4,12}"

let arrayInfo (arr: Array) name =
    let byteLength = Buffer.ByteLength arr

    // Display the array name, type, Length, and ByteLength.
    print name (arr.GetType()) arr.Length byteLength

let bytes = [| 1uy; 2uy; 3uy; 4uy; 5uy; 6uy; 7uy; 8uy; 9uy; 0uy |]
let bools = [| true; false; true; false; true |]
let chars = [| ' '; '$'; '\"'; 'A'; '{' |]
let shorts = [| 258s; 259s; 260s; 261s; 262s; 263s |]
let singles = [| 1f; 678f; 2.37E33f; 0.00415f; 8.9f |]
let doubles = [| 2E-22; 0.003; 4.4E44; 555E55 |]
let longs = [| 1L; 10L; 100L; 1000L; 10000L; 100000L |]

printfn "This example of the Buffer.ByteLength(Array) \nmethod generates the following output.\n"
print "Array name" "Array type" "Length" "ByteLength"
print "----------" "----------" "------" "----------"

// Display the Length and ByteLength for each array.
arrayInfo bytes "bytes" 
arrayInfo bools "bools" 
arrayInfo chars "chars" 
arrayInfo shorts "shorts" 
arrayInfo singles "singles" 
arrayInfo doubles "doubles" 
arrayInfo longs "longs" 


// This example of the Buffer.ByteLength(Array)
// method generates the following output.
//
// Array name          Array type   Length  ByteLength
// ----------          ----------   ------  ----------
//      bytes       System.Byte[]       10          10
//      bools    System.Boolean[]        5           5
//      chars       System.Char[]        5          10
//     shorts      System.Int16[]        6          12
//    singles     System.Single[]        5          20
//    doubles     System.Double[]        4          32
//      longs      System.Int64[]        6          48
' Example of the Buffer.ByteLength method.
Module ByteLengthDemo

    Const formatter As String = "{0,10}{1,20}{2,9}{3,12}"

    Sub ArrayInfo( arr As Array, name As String )

        Dim byteLength As Integer = Buffer.ByteLength( arr )

        ' Display the array name, type, Length, and ByteLength.
        Console.WriteLine( formatter, name, arr.GetType, arr.Length, _
            byteLength )
    End Sub

    Sub Main( )
        Dim bytes( )   As Byte    = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 0 }
        Dim bools( )   As Boolean = { True, False, True, False, True }
        Dim chars( )   As Char    = { " "c, "$"c, """"c, "A"c, "{"c }
        Dim shorts( )  As Short   = { 258, 259, 260, 261, 262, 263 }
        Dim singles( ) As Single  = { 1, 678, 2.37E33, .00415, 8.9 }
        Dim doubles( ) As Double  = { 2E-22, .003, 4.4E44, 555E55 }
        Dim longs( )   As Long    = { 1, 10, 100, 1000, 10000, 100000 }

        Console.WriteLine( _
            "This example of the Buffer.ByteLength( Array ) " & _
            vbCrLf & "method generates the following output." & vbCrLf )
        Console.WriteLine( formatter, "Array name", "Array type", _
            "Length", "ByteLength" )
        Console.WriteLine( formatter, "----------", "----------", _
            "------", "----------" )

        ' Display the Length and ByteLength for each array.
        ArrayInfo( bytes, "bytes" )
        ArrayInfo( bools, "bools" )
        ArrayInfo( chars, "chars" )
        ArrayInfo( shorts, "shorts" )
        ArrayInfo( singles, "singles" )
        ArrayInfo( doubles, "doubles" )
        ArrayInfo( longs, "longs" )
    End Sub 
End Module 

' This example of the Buffer.ByteLength( Array )
' method generates the following output.
' 
' Array name          Array type   Length  ByteLength
' ----------          ----------   ------  ----------
'      bytes       System.Byte[]       10          10
'      bools    System.Boolean[]        5           5
'      chars       System.Char[]        5          10
'     shorts      System.Int16[]        6          12
'    singles     System.Single[]        5          20
'    doubles     System.Double[]        4          32
'      longs      System.Int64[]        6          48

적용 대상