dart:io Dart’ın giriş-çıkış (I/O) işlemleri için kullanılan kütüphanesidir. Flutter’da özellikle dosya işlemleri, ağ bağlantıları, HTTP istekleri, socket işlemleri ve sistem bilgilerine erişim gibi görevlerde kullanılır.

📌 Önemli Not:

  • dart:io, sadece Flutter’ın “Dart VM” (Android, iOS, Windows, macOS, Linux) çalışan platformlarında kullanılabilir.
  • Web uygulamalarında dart:io çalışmaz! Web için dart:html veya http paketleri kullanılır.

📌 dart:io ile Neler Yapılabilir?

1️⃣ Dosya ve Klasör İşlemleri

dart:io ile dosya okuma, yazma, silme ve kopyalama gibi işlemler yapabilirsin.

📌 Dosya Yazma

Dosya Kopyalama
import 'dart:io';

void main() async {
  File dosya = File('ornek.txt');

  if (await dosya.exists()) {
    String icerik = await dosya.readAsString();
    print("Dosya içeriği: \n$icerik");
  } else {
    print("Dosya bulunamadı!");
  }
}

📌Dosya Okuma

 Dosya Kopyalama
dart
Kopyala
Düzenle
import 'dart:io';

void main() async {
  File dosya = File('ornek.txt');
  await dosya.copy('kopya_ornek.txt');
  print("Dosya kopyalandı.");
}

📌Klasör Oluşturma

import 'dart:io';

void main() async {
  Directory klasor = Directory('yeni_klasor');
  if (!(await klasor.exists())) {
    await klasor.create();
    print("Klasör oluşturuldu.");
  }
}

TCP & UDP Socket İşlemleri

TCP Sunucu Oluşturma

import ‘dart:io’;

void main() async {
ServerSocket server = await ServerSocket.bind(InternetAddress.anyIPv4, 3000);
print(“Sunucu başlatıldı: 3000”);

await for (Socket socket in server) {
socket.write(“Bağlantı sağlandı!\n”);
await socket.close();
}
}

📌 TCP İstemci Bağlantısı

import 'dart:io';

void main() async {
  Socket socket = await Socket.connect('127.0.0.1', 3000);
  socket.listen((List<int> veri) {
    print(String.fromCharCodes(veri));
  });
}

Sistem Bilgilerine Erişim

Cihazın işletim sistemi, IP adresleri ve ortam değişkenleri gibi bilgilere erişebilirsin.

📌 İşletim Sistemi ve Platform Bilgileri

import 'dart:io';

void main() {
  print("İşletim Sistemi: ${Platform.operatingSystem}");
  print("OS Versiyonu: ${Platform.operatingSystemVersion}");
}

📌 Cihazın IP Adresini Alma

import 'dart:io';

void main() async {
  for (var interface in await NetworkInterface.list()) {
    for (var addr in interface.addresses) {
      print('IP Adresi: ${addr.address}');
    }
  }
}

Şubat 23, 2016

Lor separat existentie

YORUMLAR

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir