java
Dalam tutorial ini, kita akan belajar tentang Java FileInputStream dan metodenya dengan bantuan contoh.
FileInputStream
kelas java.io
package dapat digunakan untuk membaca data (dalam byte) dari file.
Ini memperluas InputStream
kelas abstrak.
Sebelum kita mempelajari tentang FileInputStream
, pastikan untuk mengetahui tentang File Java.
Untuk membuat aliran input file, kita harus mengimpor java.io.FileInputStream
paket dulu. Setelah kita mengimpor paket, berikut adalah cara membuat aliran input file di Java.
1. Menggunakan jalur ke file
FileInputStream input = new FileInputStream(stringPath);
Di sini, kami telah membuat aliran input yang akan ditautkan ke file yang ditentukan oleh path .
2. Menggunakan objek file
FileInputStream input = new FileInputStream(File fileObject);
Di sini, kami telah membuat aliran input yang akan ditautkan ke file yang ditentukan oleh fileObject
.
FileInputStream
class menyediakan implementasi untuk berbagai metode yang ada di InputStream
kelas.
read()
- membaca satu byte dari fileread(byte[] array)
- membaca byte dari file dan menyimpan dalam array yang ditentukanread(byte[] array, int start, int length)
- membaca jumlah byte yang sama dengan panjang dari file dan simpan dalam array yang ditentukan mulai dari posisi start Misalkan kita memiliki file bernama input.txt dengan konten berikut.
This is a line of text inside the file.
Mari kita coba membaca file ini menggunakan FileInputStream
.
import java.io.FileInputStream;
public class Main {
public static void main(String args[]) {
try {
FileInputStream input = new FileInputStream("input.txt");
System.out.println("Data in the file: ");
// Reads the first byte
int i = input.read();
while(i != -1) {
System.out.print((char)i);
// Reads next byte from the file
i = input.read();
}
input.close();
}
catch(Exception e) {
e.getStackTrace();
}
}
}
Keluaran
Data in the file: This is a line of text inside the file.
Pada contoh di atas, kami telah membuat aliran input file bernama input . Aliran input ditautkan dengan input.txt berkas.
FileInputStream input = new FileInputStream("input.txt");
Untuk membaca data dari file, kami telah menggunakan read()
metode di dalam loop while.
Untuk mendapatkan jumlah byte yang tersedia, kita dapat menggunakan available()
metode. Misalnya,
import java.io.FileInputStream;
public class Main {
public static void main(String args[]) {
try {
// Suppose, the input.txt file contains the following text
// This is a line of text inside the file.
FileInputStream input = new FileInputStream("input.txt");
// Returns the number of available bytes
System.out.println("Available bytes at the beginning: " + input.available());
// Reads 3 bytes from the file
input.read();
input.read();
input.read();
// Returns the number of available bytes
System.out.println("Available bytes at the end: " + input.available());
input.close();
}
catch (Exception e) {
e.getStackTrace();
}
}
}
Keluaran
Available bytes at the beginning: 39 Available bytes at the end: 36
Pada contoh di atas,
available()
metode untuk memeriksa jumlah byte yang tersedia dalam aliran input file.read()
metode 3 kali untuk membaca 3 byte dari aliran input file.
Untuk membuang dan melewati jumlah byte yang ditentukan, kita dapat menggunakan skip()
metode. Misalnya,
import java.io.FileInputStream;
public class Main {
public static void main(String args[]) {
try {
// Suppose, the input.txt file contains the following text
// This is a line of text inside the file.
FileInputStream input = new FileInputStream("input.txt");
// Skips the 5 bytes
input.skip(5);
System.out.println("Input stream after skipping 5 bytes:");
// Reads the first byte
int i = input.read();
while (i != -1) {
System.out.print((char) i);
// Reads next byte from the file
i = input.read();
}
// close() method
input.close();
}
catch (Exception e) {
e.getStackTrace();
}
}
}
Keluaran
Input Stream after skipping 5 bytes: is a line of text inside the file.
Dalam contoh di atas, kami telah menggunakan skip()
metode untuk melewatkan 5 byte data dari aliran input file. Oleh karena itu, byte yang mewakili teks "Ini " tidak dibaca dari aliran input.
Untuk menutup aliran input file, kita dapat menggunakan close()
metode. Setelah close()
dipanggil, kita tidak dapat menggunakan aliran input untuk membaca data.
Dalam semua contoh di atas, kami telah menggunakan close()
metode untuk menutup aliran input file.
Metode | Deskripsi |
---|---|
finalize() | memastikan bahwa close() metode ini disebut |
getChannel() | mengembalikan objek FileChannel terkait dengan aliran masukan |
getFD() | mengembalikan deskriptor file yang terkait dengan aliran input |
mark() | menandai posisi di aliran input hingga data yang telah dibaca |
reset() | mengembalikan kontrol ke titik di aliran input tempat tanda ditetapkan |
Untuk mempelajari lebih lanjut, kunjungi Java FileInputStream (dokumentasi resmi Java).
java
Kelas InputStreamReader Java Dalam tutorial ini, kita akan belajar tentang Java InputStreamReader dan metodenya dengan bantuan contoh. InputStreamReader kelas java.io package dapat digunakan untuk mengubah data dalam byte menjadi data dalam karakter. Ini memperluas kelas abstrak Reader . InputS
Kelas Pembaca File Java Dalam tutorial ini, kita akan belajar tentang Java FileReader dan metodenya dengan bantuan contoh. FileReader kelas java.io package dapat digunakan untuk membaca data (dalam karakter) dari file. Ini memperluas InputSreamReader kelas. Sebelum Anda mempelajari tentang File
Kelas Java FileWriter Dalam tutorial ini, kita akan belajar tentang Java FileWriter dan metodenya dengan bantuan contoh. FileWriter kelas java.io package dapat digunakan untuk menulis data (dalam karakter) ke file. Ini memperluas OutputStreamWriter kelas. Sebelum Anda mempelajari lebih lanjut t
Kelas Java BufferedWriter Dalam tutorial ini, kita akan belajar tentang Java BufferedWriter dan metodenya dengan bantuan contoh. BufferedWriter kelas java.io package dapat digunakan dengan penulis lain untuk menulis data (dalam karakter) dengan lebih efisien. Ini memperluas kelas abstrak Writer .