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çindart:html
veyahttp
paketleri kullanılır.
Başlıklar
📌 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}');
}
}
}
Bu Yazıya Tepkin Ne Oldu ?
YORUMLAR