Aliran adalah serangkaian data.
Ketika ada interaksi data antara media yang berbeda, Java menggunakan aliran untuk mengimplementasikannya. Sumber data dapat berupa file, database, jaringan atau bahkan program lain.
Misalnya, membaca data file ke dalam suatu program, dari perspektif program, disebut aliran input.
Byte Stream (baca dan tulis data dalam byte)
Aliran input byte inputstream juga merupakan kelas abstrak, yang hanya menyediakan deklarasi metode, tetapi tidak memberikan implementasi metode spesifik.
FileInputStream adalah subclass dari InputStream. Berikut ini adalah membaca file menggunakan FileInputStream sebagai contoh.
package testIO;import java.io.File;import java.io.FileInputStream;import java.io.IOException;import java.util.Date;public class testFile {public static void main(String[] args) throws IOException {File f=new File("F:/test/lol.txt");//Create a file-based input stream FileInputStream fis = FileInputStream baru (f); // Buat array byte, dan panjangnya adalah panjang file byte [] bs = byte baru [(int) f.length ()]; System.out.println ("Baca semua konten file dalam bentuk aliran byte:"+fis.read (bs)); untuk (byte b: bs) {system.out.println (b);} fis.close ();}}OutputStream Byte Output Stream juga merupakan kelas abstrak, hanya memberikan deklarasi metode, tidak memberikan implementasi metode tertentu.
FileOutputStream adalah subclass dari OutputStream. Berikut ini adalah menulis data menggunakan FileOutputStream sebagai contoh.
package testIO;import java.io.File;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;public class writeIO {public static void main(String[] args) throws IOException {File f=new File("F:/test/lol.txt");FileOutputStream fos=new FileOutputStream (f); data byte [] = {87,88}; fos.write (data); fos.close ();}}Catatan: Jika file LOL tidak ada, operasi tulis akan secara otomatis membuat file. Jika tes direktori tidak ada, pengecualian akan dilemparkan.
Jadi jika tes direktori tidak ada, bagaimana program dapat dibuat secara otomatis? Jika jalurnya adalah f: /test/yang/lol.txt, dan tes maupun yang tidak ada?
Paket testio; import java.io.file; import java.io.filenotfoundException; import java.io.fileOutputStream; impor java.io.ioException; kelas publik writeo {public static void main (string [] args) melempar ioException {file f = new static void (string [] args) melempar ioException {file f = new static static void (string [] args) lemparan ioException {file f = new static static void (string [] args) melempar IOOException {file f = new static void (String [] args) File ("f: /test/yang/csdn/lol.txt"); System.out.println (f.exists ()); file dir = f.getParentFile (); // Dapatkan direktori di mana file tersebut berada (! Dir. fos = FileOutputStream baru (f); data byte [] = {87,88}; fos.write (data); fos.close ();}}Direktori di mana file berada diperoleh dalam program. Jika direktori tidak ada, direktori akan dibuat.
Meringkaskan
Di atas adalah semua konten dari interpretasi terperinci artikel ini tentang Java IO Streams, dan saya harap ini akan membantu semua orang. Teman yang tertarik dapat terus merujuk ke topik terkait lainnya di situs ini. Jika ada kekurangan, silakan tinggalkan pesan untuk menunjukkannya. Terima kasih teman atas dukungan Anda untuk situs ini!