Rumah >Java >javaTutorial >Java menggunakan fungsi available() kelas InputStream untuk mendapatkan bilangan bait fail yang boleh dibaca

Java menggunakan fungsi available() kelas InputStream untuk mendapatkan bilangan bait fail yang boleh dibaca

WBOY
WBOYasal
2023-07-26 12:37:492885semak imbas

Java menggunakan fungsi available() kelas InputStream untuk mendapatkan bilangan bait yang boleh dibaca bagi fail

Di Java, memproses aliran input fail adalah operasi yang sangat biasa. Kelas yang biasa digunakan ialah InputStream, yang mentakrifkan kaedah untuk membaca bait. Sebagai tambahan kepada fungsi membaca asas, InputStream juga menyediakan beberapa fungsi lain untuk mengendalikan aliran fail dengan mudah.

Salah satu fungsi berguna tersedia(), yang boleh digunakan untuk mendapatkan bilangan bait yang boleh dibaca dalam aliran input. Ini berguna jika anda perlu mengetahui saiz fail atau untuk operasi penimbal semasa memproses fail.

Berikut ialah contoh kod untuk menggunakan fungsi available() untuk mendapatkan bilangan bait yang boleh dibaca bagi fail:

import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;

public class FileReadExample {
    public static void main(String[] args) {
        try {
            // 打开文件输入流
            InputStream inputStream = new FileInputStream("example.txt");

            // 获取文件可读字节数
            int availableBytes = inputStream.available();
            System.out.println("文件可读字节数:" + availableBytes);

            // 读取文件内容
            byte[] buffer = new byte[availableBytes];
            int bytesRead = inputStream.read(buffer);
            String fileContent = new String(buffer, "UTF-8");
            System.out.println("文件内容:
" + fileContent);

            // 关闭输入流
            inputStream.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

Dalam contoh di atas, mula-mula kita mencipta objek FileInputStream untuk membuka aliran input fail, dengan mengandaikan fail nama ialah "contoh .txt". Kemudian, gunakan fungsi inputStream.available() untuk mendapatkan bilangan bait fail yang boleh dibaca dan simpannya dalam pembolehubah availableBytes.

Seterusnya, kami mencipta penimbal tatasusunan bait untuk menyimpan kandungan yang dibaca. Kami menggunakan fungsi inputStream.read(buffer) untuk membaca kandungan fail ke dalam penimbal dan mengembalikan bilangan bait sebenar yang dibaca. Kemudian, kami menukar penimbal kepada string fileContent, menggunakan pengekodan UTF-8.

Akhir sekali, kami mencetak bait fail yang boleh dibaca dan kandungan fail, dan menutup aliran input.

Contoh ini menunjukkan cara menggunakan fungsi available() InputStream untuk mendapatkan bilangan bait yang boleh dibaca bagi fail dan membaca kandungan fail ke dalam tatasusunan bait. Ini berguna untuk mengendalikan operasi fail dan operasi penimbal.

Ringkasnya, kelas InputStream menyediakan beberapa fungsi yang sangat berguna untuk mengendalikan aliran input fail. Antaranya, fungsi available() boleh membantu kami mendapatkan bilangan bait fail yang boleh dibaca, menjadikannya mudah untuk kami melaksanakan operasi fail dan operasi penimbalan. Dengan menggunakan fungsi ini, kami boleh memproses dan mengurus aliran input fail dengan lebih baik, meningkatkan kebolehbacaan dan kecekapan program.

Atas ialah kandungan terperinci Java menggunakan fungsi available() kelas InputStream untuk mendapatkan bilangan bait fail yang boleh dibaca. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn