Java-da ByteArrayOutputStream


ByteArrayOutputStream JavaBaxılıb 101

Sistem dizaynı ilə bağlı müsahibə sualları o qədər açıq ola bilər ki, düzgün hazırlaşmağı bilmək çox çətindir. İndi satın aldıqdan sonra Amazon, Microsoft və Adobe-nin dizayn dövrlərini sındıra bilirəm Bu kitabı. Gündəlik bir yenidən nəzərdən keçirin dizayn sualı və söz verirəm ki, dizayn dövrünü sındıra bilərsiniz.

Java-da ByteArrayOutputStream sinfi

Java-dakı ByteArrayOutputStream sinfi məlumatları bir sıra bayta yazır ki, bu bayt massivi məlumatlarını istənilən Çıxış axını sinfinə yaza bilək. Bayt massivini sonrakı istifadə üçün buferdə saxlayır. Bu tampon təbiətdə dinamikdir və məlumatların saxlanması əsasında avtomatik olaraq böyüyür.

Bu təlimatda ByteArrayOutputStream sinifinin müxtəlif metodlarını nümunələrlə birlikdə ətraflı şəkildə görəcəyik.

Java ByteArrayOutputStream qurucuları

Aşağıda inşaatçılar Java-da ByteAraryOutputStream sinifinin.

konstruktortəsvir
ByteArrayOutputStream ()Varsayılan gücü 32 olan yeni bir ByteArrayOutputStream yaradır
ByteArrayOutputStream (int ölçüsü)Müəyyən edilmiş tutuma malik yeni bir ByteArrayOutputStream yaradır

Java ByteArrayOutputStream metodları

ByteArrayOutputStream sinfi aşağıdakı metodlara malikdir:

Üsultəsvir
boşluq yaxın ()ByteArrayOutputStream bağlayır
boş boşluq ()Tampondan verilənləri təmizləyir
etibarsız sıfırlama ()ByteArrayOutputStream-dəki cari vəziyyəti sıfırlayır
int ölçüsü ()ByteArrayOutputStream-in cari ölçüsünü qaytarır
bayt [] toByteArray ()Yeni bir bayt massivi yaradır
String toString ()Çıxış axınındakı məzmunun simli nümayəndəliyini qaytarır
boş yaz (bayt [] b)Göstərilən bayt massivini çıxış axınına yazır
boş yaz (int b)Göstərilən baytı çıxış axınına yazır
boş yaz (bayt [] b, int off, int len)Müəyyən edilmiş bayt massivini ofset vəziyyətindən göstərilən uzunluğa qədər yazır
etibarsız writeBytes (bayt [] b)Bayt massivinin bütün məzmununu çıxış axınına yazır
void writeTo (OutputStream həyata)Bütün məzmunu göstərilən çıxış axınına yazır

Java ByteArrayOutputStream Nümunələr

İndi Java-da ByteArrayOutputStream sinifinin yuxarıdakı metodlarından istifadə edərək müxtəlif nümunələrə baxaq.

Nümunə: Bufer və çıxış axını üçün məlumat yazın

Aşağıda. İstifadə edərək buferə məlumat yazmaq nümunəsidir write() üsul və istifadə edərək eyni məzmunu çıxış axınına yazmaq writeTo() metod. Beləliklə həm bufer, həm də çıxış faylı, 80 bayt tam ədədi dəyərinə bərabər olan 'P' simvolunu ehtiva edəcəkdir.

import java.io.ByteArrayOutputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
public class WriteData {

  public static void main(String[] args) throws IOException {
    ByteArrayOutputStream bos = new ByteArrayOutputStream();
    FileOutputStream fos = new FileOutputStream("output.txt");
    
    bos.write(80);
    bos.writeTo(fos);
    
    fos.close();
    System.out.println("Content written to output stream");
  }

}
Content written to output stream

Çıxış.txt

Java ByteArrayOutputStreamPin

Nümunə: ByteArrayOutputStream istifadə edərək bayt massivini yazın

Aşağıda birbaşa istifadə edərək ByteArrayOutputStream-ə bir sıra bayt yazma nümunəsi verilmişdir write() metodunu istifadə edərək içindəki məzmunu geri oxumaq toString() metodu.

import java.io.ByteArrayOutputStream;
import java.io.IOException;
public class WriteByteArray {

  public static void main(String[] args) throws IOException {
    ByteArrayOutputStream bos = new ByteArrayOutputStream();
    String value = "Welcome to java tutorial";
    
    byte[] arrBytes = value.getBytes();
    
    bos.write(arrBytes);
    
    String text = bos.toString();
    System.out.println("Content in the output stream: " + text);
    
    bos.close();

  }

}
Content in the output stream: Welcome to java tutorial

Nümunə: Byte array yazın və ByteArrayInputStream istifadə edərək oxuyun

Bundan əlavə daxil olanları istifadə edərək bayt massivinə çevirə bilərik toByteArray() Java-da ByteArrayOutputStream sinifinin metodu. Bu misalda əvvəlcə baytları yazırıq və sonra bayt massivinə çeviririk, bundan sonra hər bir işarəni for loop.

Bu bayt massivini ByteArrayInputStream sinifindən istifadə edərək oxuya bilərik və hər bir simvolu böyük bir hala çevirə bilərik.

import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
public class ByteArray {

  public static void main(String[] args) {
    ByteArrayOutputStream bos = new ByteArrayOutputStream(16);
    try {
      bos.write("Java tutorial".getBytes());
      
      //Convert to byte array
      byte[] b = bos.toByteArray();
      for(int i = 0;i<b.length;i++)
        System.out.print((char)b[i] +  " ");
      
      System.out.println();
      
      //Reading the same input and converting to uppercase
      ByteArrayInputStream bis = new ByteArrayInputStream(b);
      int j;
      while((j=bis.read()) != -1)
        System.out.print(Character.toUpperCase((char)j) + " ");
      
    } catch (IOException e) {
      e.printStackTrace();
    }
    
    

  }

}
J a v a   t u t o r i a l 
J A V A   T U T O R I A L

Misal: ByteArrayOutputStream-in writeBytes () metodu

Bu nümunə writeBytes() bütün bayt məzmununu birbaşa çıxış axınına yazan Java-da ByteArrayOutputStream sinifinin metodu.

import java.io.ByteArrayOutputStream;
public class WriteBytes {

  public static void main(String[] args) {
    ByteArrayOutputStream bos = new ByteArrayOutputStream();
    String value = "Example of ByteArrayOutputStream";
    bos.writeBytes(value.getBytes());
    
    String text = bos.toString();
    System.out.println(text);
  }

}
Example of ByteArrayOutputStream

Nümunə: Xüsusi bayt uzunluğunu ByteArrayOutputStream-ə yazın

Bu misal, istifadə edərək ByteArrayOutputStream-ə yalnız müəyyən bir uzunluqda bayt yazmağı göstərir write() metod. Ofset 4, uzunluq 15 olduğu üçün bu aralıdakı simvolları yazdırır.

import java.io.ByteArrayOutputStream;
public class WriteBytes {

  public static void main(String[] args) {
    ByteArrayOutputStream bos = new ByteArrayOutputStream();
    String value = "Example of ByteArrayOutputStream";
    
    byte[] b = value.getBytes();
    bos.write(b, 4, 15);
    
    String text = bos.toString();
    System.out.println(text);
  }

}
ple of ByteArra

 

arayış

Crack Sistemi Dizayn Müsahibələri
Translate »
1