Boost中文件系统类FileSystem全面解析
程序开发者难免会遇见对文件进行操作,例如,定义文件路径,判断文件是否存在等。原生的CPP对文件操作功能支持的较弱,因此CPP标准委员会开发的Boost库中提供的强大的操作文件库--FileSystem。本文将对FileSystem类进行全面解析,最后通过实例讲解常用的功能。
1、 path类
path类是FileSystem中的基础类,提供的文件路径的存储功能,其构造函数可以接受C类型的字符串,也可以接受string类型的字符串。path采用标准的POSIX语法表示可移植的文件路径表示,即采用斜杠'/'分割文件路径,这也是UNIX和LINUX的常用表示方式。windows采用反斜杠'\'表示文件路径之间的分割。
例如:
//定义文件路径
boost::filesystem::path readPath ("./cmwqq2008/cmw.txt");
//定义目录
boost::filesystem::path readDir ("./cmwqq2008/");
1.1 path类提供的函数
empty()函数用于判断path类的路径字符串是否为空
operator/=,path类重载了operator/=操作符,可以向普通路径一样,采用斜杠(/)实现路径之间的追加。
例如:追加目录,也可以追加文件
//定义目录
boost::filesystem::path readDir ("./cmwqq2008/");
readDir/= "China";