boost-filesystem相关内容

Boost::filesystem,std::sort:在排序过程中无法保留信息

我正在尝试对包含从 boost::filesystem::dictionary_iterator 读取的信息的数据类型使用 std::sort.看来,由于排序算法已经进行了 n 比较,n 是目录中的文件数,因此该信息会丢失,我最终会出现段错误.Valgrind 说我正在使用未初始化的值并进行无效读取. 如何更改我的 File 数据类型或算法,以便在两次传递之间保留信息? #include ..
发布时间:2022-01-12 16:04:13 C/C++开发

boost directory_iterator 示例 - 如何不递归地列出目录文件

我应该如何使用 directory_iterator 来列出目录文件(非递归)? 此外,我应该添加/链接哪些头文件/库或我应该进行其他设置?我在我的项目中使用了 boost,但由于某种原因 directory_iterator 是“underclared identifier",而我可以使用其他 boost 功能. 更新 另一种解决方案: #include #include # ..
发布时间:2021-12-24 15:47:45 其他开发

directory_iterator file_iter重命名文件夹中的文件

我想重命名目录中的文件.该目录中有52个文件夹.每个文件夹都有一个不同的名称,每个文件夹中都有大约40个文件.我想提取一个特定文件夹的名称,并将该名称附加到该特定文件夹中的文件名称中.当每个文件夹中只有31个或更少的文件时,它工作正常.但是,只要特定文件夹中的文件数超过31,我编写的重命名算法就会失败.我无法弄清楚为什么当有更多文件时它崩溃.如果你明白为什么...,请赐教我!我要附上代码: i ..
发布时间:2021-05-07 19:09:29 C/C++开发

boost :: filesystem :: relative()无法访问该文件,因为它正在被另一个进程使用

访问某些网络驱动器时,函数 relative(path,base_path)和 canonical(path,base_path)会引发异常.该消息始终为: 该进程无法访问该文件,因为该文件正在被另一个进程使用 我仅在由我们IT部门操作并包含符号链接的某些共享网络驱动器上观察到了此行为.我无法在本地驱动器或相邻计算机的共享驱动器上引发相同的问题.我们怀疑网络驱动器上使用的存档/备份解决 ..
发布时间:2021-04-20 18:36:00 C/C++开发

boost :: filesystem :: unique_path()如何解决C ++中mkstemp模拟的需求?

Boost的旧版功能请求正在请求与 mkstemp POSIX函数.该问题已永久解决,并带有评论 第3版中的unique_path()函数解决了该问题. 但是我看不到 unique_path 如何解决该问题.它与 tmpnam 基本相同:在生成名称并在创建实际文件之前,另一个程序可能已经创建了具有相同名称的文件. 那么应该如何解决 mkstemp 中的需求? 我的猜测是(至少在 ..
发布时间:2021-04-15 20:52:52 C/C++开发

在Boost Filesystem中过滤文件夹

我想通过Windows中的Boost Filesystem将所有文件保存在一个具体的文件夹(在本例中为Documents)中. 为此,我进行了筛选以确保没有文件夹. 问题是,当我仍然获得以下文件夹时: "C:\ .... \ Documents \ My Videos","C:\ .... \ Documents \ My Music","C:\ .... \ Documents \ ..
发布时间:2021-04-15 20:49:51 C/C++开发

哪些编译器支持std :: filesystem?

感谢C ++ 11,在与boost长期保持联系之后,使我依赖它的最后一个组件是文件系统.根据以下链接,std :: filesystem似乎是实验性的:文件系统库 由于它模仿boost :: filesystem,因此我可以轻松地将我的项目改编为std并摆脱巨大的boost依赖关系.哪些编译器支持它,即使它是实验性的,因为它模仿了boost,因此也要使用它(因为没有时间表来确定何时将其标准化 ..
发布时间:2021-04-15 20:47:04 C/C++开发

为什么还必须使用-lstdc ++ fs?

关于获取 experimental / filesystem 存在一些问题code> 编译为最新版本的GCC和Clang: experimental :: filesystem linker error 但是现在 文件系统 已被接受为 c ++ 17 ,因此不再需要实验性或 -lstdc ++ fs 标志,对吗? 错误我什至不能 #include clang ..
发布时间:2020-09-28 02:22:42 C/C++开发

为什么不能更改新创建文件的“上次写入时间”?

首先,我使用Visual Studio 2015对即将发布的C ++ 17标准(基于Boost :: Filesystem)的Filesystem库的实现。 基本上,我想做的是保存文件的时间戳(即“最后写入时间”),将该文件的内容与所述时间戳一起复制到存档中,然后将该文件提取出来并使用保存的时间戳来还原正确的“上次写入时间”。 //获取文件的“上次写入时间”并将其转换为可用的整数。 ..
发布时间:2020-09-28 02:03:57 C/C++开发

Boost.Filesystem和C ++标准文件系统库有何相似之处?

我需要一个文件系统库,以供具有C ++ 11功能的编译器或具有C ++ 14功能的编译器使用-因此它不能来自C ++ 17。 现在,我知道进入C ++ 17的文件系统库基于Boost :: Filesystem;但是-它们是否足够相似,让我可以使用Boost库,然后在以后的时间无缝切换到标准版本,而无需更改超过 using 语句?还是两者之间有(轻微/重大)差异?我知道,对于 variant ..
发布时间:2020-09-26 22:58:07 C/C++开发

Boost.Filesystem create_directories修改目录名称

我正在尝试使用Boost.Filesystem创建目录(该目录可以由用户提供,因此它可能是带有嵌套目录的路径;该路径中的所有目录,部分目录或不存在目录都可以启动) ).当我运行程序时,会创建一个目录,但这不是我想要的;包含路径的字符串似乎被弄乱了.我从未两次得到相同的结果,但是目录的名称始终以冒号开头. 一个最小的例子: #include #include ..
发布时间:2020-09-22 06:00:20 C/C++开发

std :: regex的行为不一致

我遇到以下问题: 如果我传递boost::filesystem::path::string()的结果与将结果存储在中间字符串变量中,则 std::regex的行为会有所不同.第一个匹配项将被截断,但后来被std::stoull不接受(引发invalid_argument异常),而第二个匹配项将完美运行. 请参阅以下命令,详细说明问题: [nix-shell:~]$ ls -l f ..
发布时间:2020-09-22 05:59:56 C/C++开发

boost :: filesystem :: exists崩溃

当我试图从网络驱动器中获取我没有读取权限的文件时,我使用的是Boost 1.52.使用boost::filesystem::exists(fileName)后出现异常 有没有比在每个地方都做try, catch更好的工作了? 我现在已切换回原来的代码: bool FileExists(const char* fileName) { struct stat my_stat; ..
发布时间:2020-09-22 05:58:44 C/C++开发