[flutter] 플러터에서 임시 디렉토리에 디렉토리 생성하기

플러터 앱을 개발하다보면 종종 임시 디렉토리를 사용해야 할 때가 있습니다. 임시 디렉토리를 사용하면 앱에서 일시적으로 파일이나 데이터를 저장하거나 다운로드한 파일을 관리할 수 있습니다. 이번 글에서는 플러터에서 임시 디렉토리에 새로운 디렉토리를 생성하는 방법에 대해 알아보겠습니다.

임시 디렉토리 가져오기

먼저, 임시 디렉토리의 경로를 알아야 합니다. 플러터에서는 path_provider 패키지를 사용하여 디렉토리 경로를 가져올 수 있습니다. 아래의 코드를 통해 getTemporaryDirectory() 함수를 사용하여 임시 디렉토리의 경로를 얻을 수 있습니다.

import 'package:path_provider/path_provider.dart';

Future<String> getTemporaryDirectoryPath() async {
  final directory = await getTemporaryDirectory();
  return directory.path;
}

디렉토리 생성하기

임시 디렉토리 경로를 얻었다면, 이제 실제로 디렉토리를 생성해야 합니다. 디렉토리를 생성하기 위해서는 Directory 클래스의 create() 메서드를 사용합니다. 아래의 코드는 임시 디렉토리에 new_directory라는 이름의 새로운 디렉토리를 생성하는 예제입니다.

import 'dart:io';

void createDirectoryInTemporary() async {
  final tempDir = await getTemporaryDirectory();
  final newDir = Directory('${tempDir.path}/new_directory');
  
  if (!newDir.existsSync()) {
    newDir.createSync();
  }
}

위의 코드에서 Directory 클래스를 사용하여 새로운 디렉토리 객체를 생성하고, existsSync() 메서드를 사용하여 해당 디렉토리가 이미 존재하는지 확인합니다. 디렉토리가 존재하지 않는 경우에만 createSync() 메서드를 호출하여 디렉토리를 생성합니다.

테스트하기

위의 코드를 사용하여 새로운 디렉토리를 생성하는 기능을 테스트해보겠습니다. 임시 디렉토리에 새로운 디렉토리를 생성하는 코드를 실행해보면, 앱이 실행된 장치의 임시 디렉토리에 new_directory라는 디렉토리가 생성된 것을 확인할 수 있습니다.

void main() {
  createDirectoryInTemporary();
}

이제 당신은 플러터에서 임시 디렉토리에 디렉토리를 생성하는 방법을 알게 되었습니다. 이 기능을 활용하여 파일 관리나 데이터 저장 등 다양한 용도로 활용할 수 있습니다.