Boost FileSystem의 활용


이전에 올린 C#의 Path 관련 포스팅을 보시면 파일 관련해서 사용할수 있는 유용한 함수들이 많습니다. C++에서도 이런게 있으면 좋겠다라는 생각이 많이들죠. 직접 구현해도 되겠지만, 이미 잘 만들어져 있는 라이브러리가 있다면 그런 수고를 들일 필요가 없겠죠. 바로 Boost 라이브러리의 FileSystem입니다.

FileSystem을 사용하기 위해서는 일단 Boost 부터 설치해야합니다. 그리고 FileSystem은 정적 라이브러리를 사용하기 때문에 라이브러리 빌드도 해줘야 합니다. 설치 및 빌드가 귀찮으신 분들은 이전에 포스팅한 BoostPro를 사용해보시기 바랍니다. 별다른 수고 없이 손쉽게 Boost를 설치 할수 있습니다.


FileSystem을 사용하게 되면 경로 조작이나 파일 유무 판별, 파일 확장자 구하기, 루트 디렉토리 구하기등의 기능을 편하게 사용할수 있습니다.

// file system을 이용하여 파일 유무 판별과 확장자 구하기의 예
wpath wp(L"Resource\\Elephant.XML");
EXPECT_TRUE( exists(wp) );

wstring strExt = extension(wp);
EXPECT_TRUE( 0 == strExt.compare(L".XML") );

Boost FileSystem : http://www.boost.org/doc/libs/1_46_1/libs/filesystem/v3/doc/index.htm
저작자 표시 비영리 동일 조건 변경 허락
신고

설정

트랙백

댓글

  • BlogIcon 구차니 2011.04.03 08:50 신고 ADDR 수정/삭제 답글

    Boost Filesystem 은 어떤 종류를 지원하나요? ㅋ
    웬지 C++ Boost 이녀석이 filesystem을 지원한다니까
    FAT / NTFS 외에도 EXT나 HFS 등을 지원할것만 같은 망상이 마구마구 들잖아요 ㅋㅋㅋ

    • BlogIcon 친절한티스 2011.04.05 10:05 신고 수정/삭제

      filesystem FAQ 보면 특정 파일 시스템을 염두하고 제작한게 아니라는데... 될지 안될지..