Odak modu
InputStream Sınıfı
InputStream sınıfı byte akışını temsil eden bir abstract sınıftır ve Java.io paketinden gelmektedir.
InputStream abstract bir sınıf olduğu için kendi başına kullanışlı değildir o yüzden InputStream'a ait alt sınıflar veri okumak için kullanılır.
InputStream alt sınıfları : FileInputStream, ByteArrayInputStream, ObjectInputStream
Java.io paketinin FileInputStream sınıfı, dosyalardan verileri (bayt cinsinden) okumak için kullanılır.
InputStream soyut (Abstract) sınıfını miras alır.
Bir dosya giriş akışı oluşturmak için önce java.io.FileInputStream paketini içe aktarmalıyız. Paketi içe aktardıktan sonra, Java'da bir dosya giriş akışını nasıl oluşturabileceğimizi burada bulabilirsiniz.
FileInputStream input = new FileInputStream(stringPath);
FileInputStream input = new FileInputStream(File fileObject);
FileInputStream sınıfına ait metotlar :
import java.io.FileInputStream;
public class PatikaDev {
public static void main(String[] args) {
try {
FileInputStream input = new FileInputStream("input.txt");
System.out.println("Dosyadaki veriler: ");
// İlk baytı okur
int i = input.read();
while (i != -1) {
// Byte to char
System.out.print((char) i);
// Dosyadan sonraki baytı okur
i = input.read();
}
input.close();
} catch (Exception e) {
e.getStackTrace();
}
}
}
package stream;
import java.io.FileInputStream;
public class PatikaDev {
public static void main(String[] args) {
try {
FileInputStream input = new FileInputStream("input.txt");
// Kullanılabilir bayt sayısını verir
System.out.println("Kullanılabilir bayt sayısı : " + input.available());
// Dosyadan 3 baytlık veri okur
input.read();
input.read();
input.read();
// Kullanılabilir bayt sayısını verir
System.out.println("Kullanılabilir bayt sayısı : " + input.available());
input.close();
} catch (Exception e) {
e.getStackTrace();
}
}
}
Belirtilen bayt sayısını atmak ve atlamak için skip () yöntemini kullanabiliriz. Örneğin,
import java.io.FileInputStream;
public class PatikaDev {
public static void main(String[] args) {
try {
FileInputStream input = new FileInputStream("input.txt");
// 5 byte atlanacaktır
input.skip(5);
System.out.println("5 bytelık veri atlandı : ");
int i = input.read();
while (i != -1) {
System.out.print((char) i);
i = input.read();
}
input.close();
} catch (Exception e) {
e.getStackTrace();
}
}
}
Sektörde en çok aranan yazılım becerilerini kazan
Yapay zeka desteği, birebir mentörlük saatleri, canlı dersler ve senin için özel hazırlanmış içeriklerle eksiklerini tamamla, düzenli geri bildirimler al ve öğrenme sürecini en verimli hale getir.
Yunus Emre Kabakcı
Patika+ mezunuPatika+ Fullstack Web Development Bootcamp mezunumuz Yunus Emre,
3 ay içinde Katar’dan aldığı teklif ile, global bir şirket olan Pavo Group’da işe başladı!
“İçerik zenginliği, mentor desteği, ileriye dönük bir network sağlaması ve dünyada en çok tercih edilen frameworkler üzerinden bir eğitim veriyor olması Patika+’ı tercih etmemin temel sebepleri oldu!“
Yorum yapabilmek için derse kayıt olmalısın!