1

使用 boost 库中的 file_size 方法时,我遇到了一个奇怪的问题。如果我尝试使用目录迭代器取消引用的路径不是可执行文件所在的当前路径,那么对于我尝试返回的任何文件大小,我都会得到 0 值。所以如果我的路径变量被实例化为“。” 对于当前文件夹,它将返回字节大小没有问题,但如果我向上一个文件夹或 C 驱动器上任何位置的路径,则不会返回文件的字节大小。这是范围的问题还是我遗漏了什么?

4

1 回答 1

0

事实证明,如果您使用的是 directory_iterator 并试图找到 file_size( dirIter->path() ) 它仅适用于可执行文件所在的当前文件夹。但是,如果您连接您正在搜索的目录的路径使用您分配的变量名称(例如 path p = "." ),它将返回搜索到的任何文件夹中的任何文件的字节大小(如何使其工作的示例是 file_size( p / dirIter->path() )其中 / 是 boost 库中的重载连接运算符)。

于 2013-08-02T21:09:25.200 回答