Cara menggunakan filenotfoundexception python

  • BufferedInputStream di Java
  • Pembina
  • Kaedah BufferedInputStream
  • Contoh: Membaca data dari fail menggunakan Java BufferedInputStream
  • Contoh: Baca panjang data tertentu dari fail
  • Contoh: Kaedah Java BufferedInputStream tersedia ()
  • Contoh: Kaedah langkau Java BufferedInputStream ()

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.

Cara menggunakan filenotfoundexception python

Pembina

Berikut adalah pembina kelas BufferedInputStream di Java:

PembinaDeskripsi
BufferedInputStream (InputStream adalah) Membuat BufferedInputStream dan menyimpan aliran 'is' untuk kegunaan kemudian
BufferedInputStream (InputStream adalah, ukuran int) Membuat BufferedInputStream dengan ukuran yang ditentukan dan menyimpan aliran parameter 'is' untuk digunakan kemudian

Kaedah BufferedInputStream

kaedahDeskripsi
int tersedia () Mengembalikan anggaran jumlah bait yang tersedia untuk dibaca
batal tutup () Menutup BufferedInputStream
tanda kosong (int readLimit) Menandakan kedudukan semasa untuk dibaca dari aliran input
tanda boolean Disokong () Memeriksa sama ada aliran menyokong kaedah mark () dan reset ()
int baca () Membaca bait data dari aliran input
int baca (bait [] b) Membaca bait yang ditentukan dari array input
int baca (bait [] b, int mati, int len) Membaca byte data dari array bermula dari kedudukan mati yang ditentukan
bait [] readAllBytes () Membaca semua bait yang tinggal dari aliran input
bait [] readNBytes (int len) Membaca sehingga bilangan bait yang ditentukan
int readNBytes (bait [] b, int mati, int len) Membaca hingga panjang bait yang ditentukan dari tatasusunan bait bermula dari kedudukan mengimbangi.
long skip (panjang n) Slip atau buang bilangan bait yang ditentukan semasa operasi membaca
batal skipNBytes (panjang n) Melangkau atau membuang jumlah bait yang ditentukan semasa operasi membaca
perpindahan panjang Ke (OutputStream out) Membaca semua bait dari aliran input dan menulisnya ke aliran output yang ditentukan dalam urutan yang sama

Contoh: Membaca data dari fail menggunakan Java BufferedInputStream

Contoh 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 fail

Contoh 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