WEB开发网
开发学院操作系统Linux/Unix 了解 Boost Filesystem Library 阅读

了解 Boost Filesystem Library

 2008-11-13 08:29:37 来源:WEB开发网   
核心提示: 杂项函数Boost Filesystem Library 包括以下杂项函数:std::string extension(const path&):此函数以前面带句点 (.) 的形式返回给定文件名的扩展名,例如,了解 Boost Filesystem Library(9),对于文件名为 te

杂项函数

Boost Filesystem Library 包括以下杂项函数:

std::string extension(const path&):此函数以前面带句点 (.) 的形式返回给定文件名的扩展名。例如,对于文件名为 test.cpp 的文件,extension 将返回 .cpp。对于文件没有扩展名的情况,此函数将返回空字符串。对于隐藏文件(即 UNIX 系统中文件名以 . 开始的文件),此函数将相应地计算扩展名类型或返回空字符串(因此,对于 .test.profile,此例程将返回 .profile)。

std::string basename(const path&):这是与 extension 互补的例程。它将返回文件名中 . 之前的字符串。请注意,即使提供了绝对文件名,此 API 仍然仅会返回属于文件名的直接部分,如清单 10 中所示。

清单 10. 使用 boost::basename

#include <stdio.h>
#include <cstring>
#include “boost/filesystem.hpp”
use namespace std;
int main()
 {
 boost::filesystem::path path1("/tmp/dir1/test1.c ");
 boost::filesystem::path path2("/tmp/dir1/.test1.profile");
 string result1 = boost::filesystem::basename (path1); 
 string result2 = boost::filesystem::basename (path2);
 printf(“Basename 1: %s Basename2 : %sn”, result1.c_str(), result2.c_str());
 return 0;
 }
// result: Basename1: test1 Basename2: .test1

std::string change_extension(const path& oldpath, const std::string new_extension):此 API 将返回反映更改后的名称的新字符串。请注意,与 oldpath 对应的文件保持不变。这只是一个常规函数。另请注意,您必须显式地在扩展名中指定点。例如,change_extension("test.c", "so") 会得到 testso,而不是 test.so。

结束语

本文提供了 Boost Filesystem Library 的简单概述。不应将本文视为 Boost 中的整个文件系统接口的综合文档。并未讨论此 API 集的内部情况,也没有讨论这些 API 在非 UNIX 或 Windows 平台(如 VMS)中的细节。

上一页  4 5 6 7 8 9 

Tags:了解 Boost Filesystem

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接