[flutter] 플러터에서 앱 문서 디렉토리에 파일 읽기

Flutter는 모바일 앱 개발을 위한 크로스 플랫폼 프레임워크로, 다양한 기기와 플랫폼에서 동작하는 앱을 개발할 수 있습니다. 이때 앱이 사용자의 문서 디렉토리에 있는 파일을 읽어오는 기능은 매우 유용합니다.

이 글에서는 Flutter에서 앱 문서 디렉토리에 있는 파일을 읽는 방법을 알아보겠습니다.

1. 파일 시스템 접근을 위한 패키지 임포트하기

Flutter에서는 path_provider 패키지를 사용하여 파일 시스템에 접근할 수 있습니다. 따라서 프로젝트의 pubspec.yaml 파일에 아래와 같이 path_provider 패키지를 추가해주세요.

dependencies:
  flutter:
    sdk: flutter
  path_provider: ^2.0.3

그리고 패키지를 import 해주세요.

import 'package:path_provider/path_provider.dart';

2. 앱 문서 디렉토리에 파일 읽기

앱의 문서 디렉토리에 있는 파일을 읽으려면 getApplicationDocumentsDirectory() 메서드를 사용하여 앱의 문서 디렉토리 경로를 얻어와야 합니다. 그리고 해당 경로에 있는 파일을 File 클래스를 사용하여 읽을 수 있습니다.

아래는 앱 문서 디렉토리에 있는 파일을 읽는 예제 코드입니다.

void readFileFromDocumentsDirectory() async {
  Directory documentsDirectory = await getApplicationDocumentsDirectory();
  String filePath = "${documentsDirectory.path}/file.txt";
  File file = File(filePath);
  
  if (await file.exists()) {
    String content = await file.readAsString();
    print(content);
  }
}

위의 코드에서는 file.txt 파일을 앱 문서 디렉토리에서 읽어옵니다. 파일이 존재하면 해당 파일의 내용을 읽어와 콘솔에 출력합니다.

3. 실행 예제

앱 문서 디렉토리에 file.txt 파일을 생성하고, 아래와 같은 내용을 쓴 뒤 앱을 실행해보세요.

Hello, Flutter!

file.txt 파일의 내용이 콘솔에 출력되는 것을 확인할 수 있을 것입니다.

결론

이번 글에서는 Flutter에서 앱 문서 디렉토리에 있는 파일을 읽는 방법을 알아보았습니다. path_provider 패키지를 사용하여 앱의 문서 디렉토리 경로를 얻고, 해당 경로에 있는 파일을 읽을 수 있습니다.

더 자세한 내용은 path_provider 패키지의 문서를 참고하세요.