Java’da Çeşitli I/O İşlemleri için Sınıflar

sametklou

Java’da Çeşitli I/O İşlemleri için Sınıflar

Java'da Input/Output (I/O) işlemleri yaparken kullanabileceğiniz birçok farklı sınıf bulunmaktadır. Bu sınıflar, dosyalardan veri okuma/yazma, ağ üzerinde veri transferi, konsoldan kullanıcıdan veri alma gibi işlemleri gerçekleştirmenize olanak tanır. İşte Java'da kullanabileceğiniz bazı önemli I/O sınıfları:

1. InputStream ve OutputStream Sınıfları

  • InputStream: Bayt tabanlı giriş işlemleri için kullanılır. Örneğin, bir dosyadan veri okuma işlemi için FileInputStream sınıfı kullanılır.
  • OutputStream: Bayt tabanlı çıkış işlemleri için kullanılır. Örneğin, bir dosyaya veri yazma işlemi için FileOutputStream sınıfı kullanılır.
// Dosyadan veri okuma
InputStream input = new FileInputStream("dosya.txt");
int data = input.read();
while(data != -1) {
    System.out.print((char)data);
    data = input.read();
}
input.close();

// Dosyaya veri yazma
OutputStream output = new FileOutputStream("yeni_dosya.txt");
output.write("Merhaba, dünya!".getBytes());
output.close();

2. Reader ve Writer Sınıfları

  • Reader: Karakter tabanlı giriş işlemleri için kullanılır. Örneğin, bir dosyadan karakterleri okumak için BufferedReader sınıfı kullanılır.
  • Writer: Karakter tabanlı çıkış işlemleri için kullanılır. Örneğin, bir dosyaya karakterleri yazmak için BufferedWriter sınıfı kullanılır.
// Dosyadan karakterleri okuma
Reader reader = new FileReader("dosya.txt");
int character = reader.read();
while(character != -1) {
    System.out.print((char)character);
    character = reader.read();
}
reader.close();

// Dosyaya karakterleri yazma
Writer writer = new FileWriter("yeni_dosya.txt");
writer.write("Merhaba, dünya!");
writer.close();

3. DataInputStream ve DataOutputStream Sınıfları

  • DataInputStream: Veri türlerine özgü giriş işlemleri için kullanılır. Örneğin, bir dosyadan int veya double gibi veri türlerini okumak için kullanılır.
  • DataOutputStream: Veri türlerine özgü çıkış işlemleri için kullanılır.
// DataInputStream kullanımı
DataInputStream dataInput = new DataInputStream(new FileInputStream("veri.dat"));
int intValue = dataInput.readInt();
double doubleValue = dataInput.readDouble();
char charValue = dataInput.readChar();
dataInput.close();

// DataOutputStream kullanımı
DataOutputStream dataOutput = new DataOutputStream(new FileOutputStream("veri.dat"));
dataOutput.writeInt(42);
dataOutput.writeDouble(3.14);
dataOutput.writeChar('A');
dataOutput.close();

Java'da I/O işlemleri için birçok farklı sınıf bulunmaktadır ve yukarıda verilen örnekler sadece temel birkaç sınıfı içermektedir. Daha fazla detaylı bilgi için Java'nın resmi dokümantasyonunu incelemeniz önerilir.