Java InputStream (Örnekle)

Bu eğiticide, bir örnek yardımıyla Java InputStream sınıfı ve yöntemleri hakkında bilgi edineceğiz.

InputStreamSınıf java.iopaketi bayt bir giriş akışı temsil eden bir arka üst sınıf bir.

Yana InputStreamsoyut bir sınıftır, kendi başına kullanışlı değildir. Bununla birlikte, alt sınıfları verileri okumak için kullanılabilir.

InputStream alt sınıfları

İşlevselliğini InputStreamkullanmak için alt sınıflarını kullanabiliriz. Onlardan bazıları:

  • FileInputStream
  • ByteArrayInputStream
  • ObjectInputStream

Bir sonraki derste tüm bu alt sınıflar hakkında bilgi edineceğiz.

Bir Giriş Akışı Oluşturun

Bir InputStream oluşturmak için önce java.io.InputStreampaketi içe aktarmalıyız . Paketi içe aktardıktan sonra, işte giriş akışını nasıl oluşturabiliriz.

 // Creates an InputStream InputStream object1 = new FileInputStream(); 

Burada, kullanarak bir giriş akışı oluşturduk FileInputStream. Çünkü öyle InputStreamsoyut bir sınıftır. Dolayısıyla bir nesneyi yaratamayız InputStream.

Not : Diğer alt sınıflardan da bir girdi akışı oluşturabiliriz InputStream.

InputStream Yöntemleri

InputStreamSınıf onun alt sınıflar tarafından uygulanan farklı yöntemler sağlar. Yaygın olarak kullanılan yöntemlerden bazıları şunlardır:

  • read() - giriş akışından bir bayt veri okur
  • read(byte() array) - akıştan bayt okur ve belirtilen dizide depolar
  • available() - giriş akışında bulunan bayt sayısını döndürür
  • mark() - verinin okunduğu giriş akışındaki konumu işaretler
  • reset() - kontrolü akışta işaretin ayarlandığı noktaya döndürür
  • markSupported()- mark()ve reset()yönteminin akışta desteklenip desteklenmediğini kontrol eder
  • skips() - giriş akışından belirtilen bayt sayısını atlar ve atar
  • close() - giriş akışını kapatır

Örnek: FileInputStream Kullanarak InputStream

Sınıfı InputStreamkullanarak nasıl gerçekleştirebileceğimiz aşağıda açıklanmıştır FileInputStream.

Aşağıdaki içeriğe sahip input.txt adında bir dosyamız olduğunu varsayalım .

 This is a line of text inside the file. 

Bu dosyayı FileInputStream(alt sınıfı InputStream) kullanarak okumaya çalışalım .

 import java.io.FileInputStream; import java.io.InputStream; public class Main ( public static void main(String args()) ( byte() array = new byte(100); try ( InputStream input = new FileInputStream("input.txt"); System.out.println("Available bytes in the file: " + input.available()); // Read byte from the input stream input.read(array); System.out.println("Data read from the file: "); // Convert byte array into string String data = new String(array); System.out.println(data); // Close the input stream input.close(); ) catch (Exception e) ( e.getStackTrace(); ) ) ) 

Çıktı

 Available bytes in the file: 35 Data read from the file: This is a line of text inside the file 

Yukarıdaki örnekte, FileInputStreamsınıfı kullanarak bir giriş akışı oluşturduk . Giriş akışı, input.txt dosyasıyla bağlantılıdır .

 InputStream input = new FileInputStream("input.txt"); 

Verileri input.txt dosyasından okumak için bu iki yöntemi uyguladık.

 input.read(array); // to read data from the input stream input.close(); // to close the input stream 

Daha fazla bilgi edinmek için Java InputStream'i (resmi Java belgeleri) ziyaret edin.

Ilginç makaleler...