[flutter] 플러터에서 앱 문서 디렉토리의 디렉토리 삭제하기
플러터에서는 path_provider
패키지를 사용하여 앱의 문서 디렉토리에 접근할 수 있습니다. 이 패키지는 플랫폼별로 문서 디렉토리의 경로를 제공하므로, 플러터 앱에서 파일을 저장하고 불러오는 데 사용할 수 있습니다.
만약 플러터 앱에서 앱 문서 디렉토리 내부에 있는 디렉토리를 삭제해야 한다면, dart:io
패키지를 사용하여 파일 시스템 조작을 수행할 수 있습니다. 다음은 디렉토리를 삭제하는 예제 코드입니다.
import 'dart:io';
import 'package:path_provider/path_provider.dart';
void deleteDirectory() async {
// 앱 문서 디렉토리 경로 가져오기
Directory appDocDir = await getApplicationDocumentsDirectory();
// 삭제할 디렉토리 경로 생성
String directoryPath = '${appDocDir.path}/my_directory';
// 디렉토리 존재 여부 확인
if (await Directory(directoryPath).exists()) {
// 디렉토리 삭제
await Directory(directoryPath).delete(recursive: true);
print('디렉토리가 삭제되었습니다.');
} else {
print('디렉토리가 존재하지 않습니다.');
}
}
위의 코드에서 getApplicationDocumentsDirectory()
를 사용하여 앱 문서 디렉토리의 경로를 가져온 후, 해당 디렉토리의 경로를 지정하여 Directory
객체를 생성합니다. 만약 디렉토리가 존재한다면 delete
메서드를 호출하여 디렉토리를 삭제합니다.
또한 recursive
매개변수를 true
로 설정하면 디렉토리 내부에 있는 모든 파일과 하위 디렉토리도 함께 삭제됩니다. false
로 설정하면 비어있지 않은 경우에는 디렉토리를 삭제할 수 없습니다.
서버 또는 로컬 환경에서 파일 시스템 조작을 수행하기 때문에 필요에 따라 권한 확인 및 예외 처리 코드를 추가해야 합니다.
참고 자료: