exists
- Dart kursu
- Orta seviye
- Ders 91/116
- 5 dk
File.exists ile dosya varlığını kontrol etmeyi öğrenirsin.
Dosya varlığı denetimi
File.existsSync() bir dosyanın var olup olmadığını bool olarak döndürür. Okumadan önce denetlemek, dosya yok hatasını önler.
Örnek: if (f.existsSync()) { print(f.readAsStringSync()); }. Dosya varsa içeriğini okur; yoksa sessizce geçer.
Asenkron exists() bir Future<bool> döndürür. Küçük programlarda eş zamanlı sürüm daha basittir.
Olmayan dosyayı ele almak
Dosya yoksa readAsStringSync() hata fırlatır. Bunu önlemek için önce existsSync() ile denetle, yoksa varsayılan bir değer kullan.
Örnek: var content = f.existsSync() ? f.readAsStringSync() : 'boş';. Dosya yoksa 'boş' döner; program çökmez.
Bu desen, yapılandırma dosyalarında yaygındır: dosya yoksa varsayılan ayar kullanılır.
Uygulama Varlığı yazdır
import 'dart:io'; ile kütüphaneyi içe aktar. main içinde File('test.txt') oluştur; writeAsStringSync('veri') ile yaz. existsSync() sonucunu print ile yazdır.
Başlangıç kodu
// dart:io kütüphanesini içe aktar
void main() {
// test.txt dosyasına yaz, varlığını yazdır
}Örnek çözüm
import 'dart:io';
void main() {
var f = File('test.txt');
f.writeAsStringSync('veri');
print(f.existsSync());
}Beklenen çıktı
true
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 existsSync() ne döndürür?
- Bir dize
- Bir bool Doğru cevap
- void
- Bir Future
Açıklama: existsSync() bir bool döndürür.
2 existsSync çağrısı
var f = File('not.txt');
if (f.____()) {
print('var');
}
var f = File('not.txt');
if (f.existsSync()) {
print('var');
}
Açıklama: existsSync() ile varlık denetlenir.
3 Varlık denetimi parçaları
| Kavram | Anlamı |
|---|---|
existsSync() |
Eş zamanlı denetim |
exists() |
Asenkron denetim |
Future<bool> |
Asenkron dönüş |
if (f.existsSync()) |
Koşul |