파일 시스템

2022. 3. 4. 18:40·C++
반응형

C++17의 새로운 라이브러리다.

C++14 이전에는 파일 시스템과 다음과 같은 구성요소에 대하여 연산을 할 방법이 없었다.

-> 경로, 일반 파일, 디렉터리

파일 시스템은 파일 읽기와 쓰기에 관한 라이브러리가 아니다.

파일 속성 변경, 디렉터리 순회, 파일 복사 등에 관한 라이브러리다.

이 모든걸 std::fs로 할 수 있다.

 

컴파일러에 따라 std::filesystem 네임스페이스 대신 std::experimental::filesystem::v1을 사용해야 될 수도 있다.

 

파일 시스템 연산

1. 플랫폼 공통적인 방법으로 경로 합치기

2. 파일과 디렉터리 복사, 이름바꾸기, 삭제

3. 디렉터리에서 파일, 디렉터리 목록 가져오기

4. 파일 권한 읽기 및 설정

5. 파일 상태 읽기 및 설정

 

std::filesystem::path::operator/=

-> path& operator/=(const path& p);

p를 현재 경로의 서브폴더로 덧붙인다.(리눅스, 윈도우 모두 작동가능)

 

파일, 디렉터리 복사

fs::copy(originalTextPath, copiedTextPath); //파일 복사

fs::copy(originalDirPath, copiedDirPath); //디렉터리 복사(비재귀적)

fs::copy(originalDirPath, copiedDirPath, fs::copy_options::recursive); //디렉터리 복사(재귀적)

 

파일 또는 디렉터리 이름 변경 또는 이동

fs::rename();

 

파일 또는 디렉터리 삭제

fs::remove(); // 특정 파일삭제

fs::remove_all(); // 특정 폴더 안에 있는 모든 것을 삭제

 

class recursive_directory_iterator;

- 디렉터리의 요소들을 순회

- 재귀적으로 하위 디렉터리의 요소들을 순회

 

파일 상태 반환

std::filesystem::status();

-> std::filesystem::file_status status(const std::filesystem::path& p);

반응형
저작자표시 (새창열림)

'C++' 카테고리의 다른 글

쓰레딩 라이브러리  (1) 2022.03.04
모듈 시스템  (1) 2022.03.04
가변 인자 템플릿  (1) 2022.03.04
람다 식(Lambda Expression)  (0) 2022.03.03
C++ constexpr  (1) 2022.03.02
'C++' 카테고리의 다른 글
  • 쓰레딩 라이브러리
  • 모듈 시스템
  • 가변 인자 템플릿
  • 람다 식(Lambda Expression)
숯불돼지왕갈비
숯불돼지왕갈비
게임 개발을 목표로 학습하는 블로그 입니다!
  • 숯불돼지왕갈비
    게임 개발 공부기
    숯불돼지왕갈비
  • 전체
    오늘
    어제
    • 분류 전체보기 (314)
      • 학교수업 (165)
      • 취업강의 (6)
      • C++ (52)
        • 코딩 테스트 (5)
      • Unreal Engine 5 (26)
        • MMORPG 개발 (26)
      • Unreal Engine 4 (44)
        • Omak Project (3)
        • Unreal Engine 4 개발일지 (9)
        • Unreal Engine 4 (32)
      • Unity (1)
        • 개발 일지 (1)
      • 수학 (3)
        • 소프트웨어 공학용 수학 (3)
      • DirectX 11 (4)
      • 게임 디자인 패턴 (2)
      • 포트폴리오 (1)
      • 자격증 (9)
        • 컴퓨터 활용능력 (8)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    알고리즘
    프로그래머스
    백준
    c++
    코딩
    정렬
    자료구조
    코딩테스트
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.0
숯불돼지왕갈비
파일 시스템
상단으로

티스토리툴바