Dart:
Sjekker om en katalog eksisterer
Hvordan:
Dart bruker dart:io
-biblioteket for å arbeide med filer og mapper. Her er en enkel måte å sjekke om en mappe eksisterer:
import 'dart:io';
void main() {
var directory = Directory('sti/til/din/mappe');
if (directory.existsSync()) {
print('Mappen eksisterer');
} else {
print('Mappen eksisterer ikke');
}
}
Eksempel på utskrift hvis mappen eksisterer:
Mappen eksisterer
Eller, hvis den ikke gjør det:
Mappen eksisterer ikke
For å håndtere mer komplekse scenarioer, som asynkron sjekking eller å opprette en mappe hvis den ikke eksisterer, kan du bruke følgende tilnærming:
import 'dart:io';
void main() async {
var directory = Directory('sti/til/din/mappe');
// Sjekker asynkront om mappen eksisterer
var exists = await directory.exists();
if (exists) {
print('Mappen eksisterer');
} else {
print('Mappen eksisterer ikke, oppretter...');
await directory.create(); // Dette oppretter mappen
print('Mappe opprettet');
}
}
Eksempel på utskrift hvis mappen ikke eksisterte og ble opprettet:
Mappen eksisterer ikke, oppretter...
Mappe opprettet
Darts innebygde muligheter er vanligvis tilstrekkelige for å håndtere filer og mapper, så tredjeparts biblioteker er vanligvis ikke nødvendige for denne oppgaven. Imidlertid, for mer komplekse filsystemoperasjoner, kan pakker som path
(for å manipulere baner på en plattformagnostisk måte) komplementere dart:io
-biblioteket, men tilbyr ikke direkte mer avanserte sjekker av mappeeksistens enn det som er vist.