[flutter] 플러터에서 앱 내부 저장소에 파일 삭제하기

안녕하세요! 이번에는 플러터에서 앱 내부 저장소에 저장된 파일을 삭제하는 방법에 대해 알아보겠습니다.

1. 파일 삭제하기 전에 권한 설정하기

앱 내부 저장소에 파일을 삭제하기 전에, 앱이 해당 디렉토리에 접근할 수 있는 권한을 설정해야합니다. 이를 위해 path_provider 패키지를 사용하여 앱의 디렉토리 경로를 가져옵니다.

import 'package:path_provider/path_provider.dart';

Directory appDocDir = await getApplicationDocumentsDirectory();
String appDocPath = appDocDir.path;

2. 파일 삭제하기

앱 내부 저장소에 있는 파일을 삭제하기 위해서는 File 클래스의 delete() 메서드를 사용합니다. 이 메서드를 사용하려면 파일의 경로를 알아야합니다.

import 'dart:io';

String filePath = '$appDocPath/example.txt'; // 삭제할 파일의 경로
File file = File(filePath);

if (await file.exists()) {
  await file.delete();
  print('파일이 성공적으로 삭제되었습니다.');
} else {
  print('삭제할 파일이 없습니다.');
}

위의 코드에서 example.txt는 삭제할 파일의 이름이며, 필요에 따라 수정하여 사용하시면 됩니다.

3. 파일 삭제하기 예외 처리하기

파일 삭제 작업은 외부 상황에 의해 실패할 수 있습니다. 만약 파일 삭제 작업이 실패하면 FileSystemException이 발생합니다. 이러한 예외를 처리하기 위해 try-catch 문을 사용할 수 있습니다.

try {
  await file.delete();
  print('파일이 성공적으로 삭제되었습니다.');
} catch (e) {
  print('파일 삭제 실패: $e');
}

마무리

위의 코드를 활용하여 플러터 앱에서 앱 내부 저장소에 있는 파일을 삭제할 수 있습니다. 파일 삭제 전에 권한을 설정하고, 삭제 작업을 예외 처리하는 것을 잊지마세요.

더 자세한 내용은 Flutter 공식 문서를 참고하시기 바랍니다.