Show BufferedInputStream adalah kelas di Java yang dapat kita gunakan untuk membaca data dari aliran file. Kita dapat menggunakan FileInputStream sebagai aliran input bersama dengan BufferedInputStream. Ia menggunakan konsep buffer di mana ia membuat array buffer setiap kali kita membuat BufferedInputStream. Setiap kali kita memanggil kaedah baca, ia membaca sekumpulan bait dari cakera dan menyimpannya dalam penyangga dalaman. Oleh itu ia membaca data dari penyangga yang mengurangkan panggilan ke cakera. Ini menjadikan prestasi lebih pantas. PembinaBerikut adalah pembina kelas BufferedInputStream di Java:
Kaedah BufferedInputStream
Contoh: Membaca data dari fail menggunakan Java BufferedInputStreamContoh di bawah membaca kandungan fail sehingga kaedah read () mengembalikan -1 yang merupakan akhir fail. Ia menukar nilai integer ke watak dan kemudian mencetak maklumat. File input mengandungi informasi "Ini adalah contoh BufferedInputStream". import java.io.BufferedInputStream; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; public class ReadFile { public static void main(String[] args) throws FileNotFoundException { FileInputStream fi = new FileInputStream("InputFile.txt"); BufferedInputStream bi = new BufferedInputStream(fi); try { int i; while((i=bi.read()) != -1) { System.out.print((char)i); } bi.close(); fi.close(); } catch (IOException e) { e.printStackTrace(); } } } This is an example of BufferedInputStream Berikut adalah contoh lain untuk membaca kandungan fail menggunakan kaedah yang ada. Kaedah yang tersedia mengembalikan nilai yang lebih besar daripada 0 jika terdapat lebih banyak bait untuk dibaca. Oleh itu menggunakan a sambil gelung, kita dapat membaca kandungan fail sehingga kaedah yang tersedia mengembalikan nilai negatif. import java.io.BufferedInputStream; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; public class ReadFile { public static void main(String[] args) throws FileNotFoundException { FileInputStream fi = new FileInputStream("InputFile.txt"); BufferedInputStream bi = new BufferedInputStream(fi); try { while(bi.available() > 0) System.out.print((char)bi.read()); bi.close(); fi.close(); } catch (IOException e) { e.printStackTrace(); } } } This is an example of BufferedInputStream Contoh: Baca panjang data tertentu dari failContoh di bawah menunjukkan cara membaca panjang data tertentu dari fail menggunakan read () kaedah dari kelas BufferedInputStream di Java. Di sini, kami hanya memperuntukkan 10 bait, di mana kita membaca 8 bait bermula dari kedudukan 0. Oleh itu ia hanya mencetak "Ini **" dengan mengisi baki 2 bait data dengan "*". import java.io.BufferedInputStream; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; public class ReadFile { public static void main(String[] args) throws FileNotFoundException { FileInputStream fi = new FileInputStream("InputFile.txt"); BufferedInputStream bi = new BufferedInputStream(fi); try { byte[] b = new byte[10]; int a = bi.read(b, 0, 8); for(byte by : b) { char ch = (char)by; if(by == 0) ch = '*'; System.out.print(ch); } bi.close(); fi.close(); } catch (IOException e) { e.printStackTrace(); } } } This is ** Contoh: Kaedah Java BufferedInputStream tersedia ()Kaedah yang tersedia () dari kelas BufferedInputStream mengembalikan anggaran jumlah bait yang tinggal untuk dibaca dari aliran input. Pada mulanya, ia menyimpan jumlah bait yang ada sebelum operasi baca. Berdasarkan jumlah bait yang dibaca, ia mengembalikan anggaran jumlah bait yang tinggal untuk dibaca. Kita dapat memahami perkara ini dengan jelas dengan contoh di bawah. import java.io.BufferedInputStream; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; public class CheckAvailableBytes { public static void main(String[] args) throws IOException { FileInputStream fi = new FileInputStream("InputFile.txt"); BufferedInputStream bi = new BufferedInputStream(fi); int a = 0; System.out.println("Available bytes before read operation: " + bi.available()); System.out.print((char)bi.read()); System.out.print((char)bi.read()); System.out.print((char)bi.read()); System.out.print((char)bi.read()); System.out.println("\nAvailable bytes after read operation: " + bi.available()); bi.close(); fi.close(); } } Available bytes before read operation: 41 This Available bytes after read operation: 37 Contoh: Kaedah langkau Java BufferedInputStream ()Contoh di bawah menunjukkan cara kerja kaedah skip () di kelas Java BufferedInputStream. Berdasarkan angka yang dilewatkan sebagai parameter dalam kaedah langkau (), ia membuang sebilangan besar bait untuk dibaca. Di sini, kami membuang 4 bait data pertama untuk dibaca dan terus membaca bait yang tinggal menggunakan kaedah read (). import java.io.BufferedInputStream; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; public class SkipDemo { public static void main(String[] args) throws IOException { FileInputStream fi = new FileInputStream("InputFile.txt"); BufferedInputStream bi = new BufferedInputStream(fi); try { bi.skip(4); System.out.println("Contents after skipping 4 bytes:"); int a = 0; while((a=bi.read()) != -1) System.out.print((char)a); bi.close(); fi.close(); } catch (IOException e) { e.printStackTrace(); } } } Contents after skipping 4 bytes: is an example of BufferedInputStream Rujukan |