Java – ByteArrayOutputStream

ByteArrayOutputStream դասի հոսքը ստեղծում է բուֆեր հիշողությունում և հոսքի կողմից ուղարկված բոլոր տվյալները պահվում են բուֆերներում:

Ստորև ներկայացվում է ByteArrayOutputStream դասի կողմից տրամադրվող կոնստրուկտորների ցանկը:

Sr.No.

Constructor and Description

1

ByteArrayOutputStream()

Այս կոնստրուկտորը ստեղծում է ByteArrayOutputStream որն ունի 32 բայթանոց բուֆեր։

2

ByteArrayOutputStream(int a)

Այս կոնստրուկտորը ստեղծում է ByteArrayOutputStream որն ունի սահմանված չափսի բուֆեր։

 

Այն բանից հետո, երբ պատրաստ է ByteArrayOutputStream օբյեկտը, առկա են մի շարք օգնական մեթոդներ, որոնք կարող են օգտագործվել հոսքը գրելու կամ հոսքի հետ այլ գործողություններ կատարելու համար:

Sr.No.

Constructor and Description

1

public void reset()

Այս մեթոդը հավասարեցնում է ելքային հոսքի վավեր բայթերի քանակը զրոյի, այնպես որ հոսքի ամբողջ արդյունքը հեռացվում է։

2 public byte[] toByteArray()

Այս մեթոդը ստեղծում է նոր բայթերի զանգված՝ Byte array: Դրա չափը նույնն է, ինչ ելքային հոսքի չափը և բուֆերի բովանդակությունը կկրկնօրինակվի այստեղ: Վերադարձնում է ելքային հոսքի ընթացիկ բովանդակությունը որպես բայթերի զանգված։

 

3

public String toString()

Բուֆերի բովանդակությունը վերափոխում է տողի: Թարգմանությունը կկատարվի ըստ նախնական կոդավորման: Վերադարձնում է բուֆերի բովանդակությունից թարգմանված տողը:

 

4

public void write(int w)

Գրի է առնում սահմանված զանգվածը ելքային հոսքում

 

5

public void write(byte []b, int of, int len)

Գրի է առնում բայթերի len թիվը սկսված off օֆսեթից մինչև հոսք։

 

6

public void writeTo(OutputStream outSt)

Գրի է առնում այս հոսքի ամբողջ բովանդակությունը նշված հոսքի արգումնետում։

 

Հետևյալ օրինակը ներկայացնում է ByteArrayOutputStream-ը և ByteArrayInputStream-ը։

Օրինակ՝

import java.io.*;

public class ByteStreamTest {

public static void main(String args[])throws IOException {

ByteArrayOutputStream bOutput = new ByteArrayOutputStream(12);

while( bOutput.size()!= 10 ) {

// Gets the inputs from the user

bOutput.write(“hello”.getBytes());

}

byte b [] = bOutput.toByteArray();

System.out.println(“Print the content”);

for(int x = 0; x < b.length; x++) {

// printing the characters

System.out.print((char)b[x]+ ” “);

}

System.out.println(” “);

int c;

ByteArrayInputStream bInput = new ByteArrayInputStream(b);

System.out.println(“Converting characters to Upper case ” );

for(int y = 0 ; y < 1; y++ ) {

while(( c = bInput.read())!= -1) {

System.out.println(Character.toUpperCase((char)c));

}

bInput.reset();

}

}

}

 

Արդյունքը՝

Print the content

h e l l o h e l l o

Converting characters to Upper case

H

E

L

L

O

H

E

L

L

O