从 boost::filesystem::is_directory 捕获异常

2024-02-10

我目前正在从 boost::filesystem::is_directory 捕获错误,并通过在异常上调用“what()”向用户显示错误。这给出了失败的原因,但该错误对用户来说很奇怪。例如:

boost::filesystem::is_directory:访问被拒绝

如何捕获升压错误并找出实际原因,以便显示更好的错误消息?


“更好的错误消息”你的意思是这样的

#include <iostream>
#include <boost/filesystem.hpp>
int main()
{
    boost::filesystem::path p("/proc/1/fd/1");
    try {
       boost::filesystem::is_directory(p);
    } catch(const boost::filesystem::filesystem_error& e)
    {
       if(e.code() == boost::system::errc::permission_denied)
           std::cout << "Search permission is denied for one of the directories "
                     << "in the path prefix of " << p << "\n";
       else
           std::cout << "is_directory(" << p << ") failed with "
                     << e.code().message() << '\n';
    }
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

从 boost::filesystem::is_directory 捕获异常 的相关文章

  • boost::multi_index_container 复合键中的 equal_range 与比较运算符

    我正在尝试从多索引容器查询结果 其中值类型是三个元素的结构 第一个值已给出 但第二个和第三个值必须大于或小于查询参数 经过搜索后 我发现必须实现自定义密钥提取器 并且这里的一些链接建议相同 但我无法实现它 boost multi index
  • C++:无法使用scoped_allocator_adaptor传播polymorphic_allocator

    我有一个vector
  • Signalr 在生产服务器中总是陷入长轮询

    当我在服务器中托管应用程序时 它会检查服务器端事件并始终回退到长轮询 服务器托管环境为Windows Server 2012 R1和IIS 7 5 无论如何 我们是否可以解决这个问题 https cloud githubuserconten
  • Func 方法参数的首选命名约定是什么?

    我承认这个问题是主观的 但我对社区的观点感兴趣 我有一个缓存类 它采用类型的缓存加载器函数Func
  • FFMPEG Seeking 带来音频伪影

    我正在使用 ffmpeg 实现音频解码器 在读取音频甚至搜索已经可以工作时 我无法找到一种在搜索后清除缓冲区的方法 因此当应用程序在搜索后立即开始读取音频时 我没有任何工件 avcodec flush buffers似乎对内部缓冲区没有任何
  • 跨多个控件共享事件处理程序

    在我用 C 编写的 Windows 窗体应用程序中 我有一堆按钮 当用户的鼠标悬停在按钮上时 我希望按钮的边框发生变化 目前我有以下多个实例 每个按钮一个副本 private void btnStopServer MouseEnter ob
  • C# 中可空类型是什么?

    当我们必须使用nullable输入 C net 任何人都可以举例说明 可空类型 何时使用可空类型 https web archive org web http broadcast oreilly com 2010 11 understand
  • HttpClient 像浏览器一样请求

    当我通过 HttpClient 类调用网站 www livescore com 时 我总是收到错误 500 可能服务器阻止了来自 HttpClient 的请求 1 还有其他方法可以从网页获取html吗 2 如何设置标题来获取html内容 当
  • 当 Cortex-M3 出现硬故障时如何保留堆栈跟踪?

    使用以下设置 基于 Cortex M3 的 C gcc arm 交叉工具链 https launchpad net gcc arm embedded 使用 C 和 C FreeRtos 7 5 3 日食月神 Segger Jlink 与 J
  • 基于范围的 for 循环中的未命名循环变量?

    有没有什么方法可以不在基于范围的 for 循环中 使用 循环变量 同时也避免编译器发出有关未使用它的警告 对于上下文 我正在尝试执行以下操作 我启用了 将警告视为错误 并且我不想进行像通过在某处毫无意义地提及变量来强制 使用 变量这样的黑客
  • A* 之间的差异 pA = 新 A;和 A* pA = 新 A();

    在 C 中 以下两个动态对象创建之间的确切区别是什么 A pA new A A pA new A 我做了一些测试 但似乎在这两种情况下 都调用了默认构造函数 并且仅调用了它 我正在寻找性能方面的任何差异 Thanks If A是 POD 类
  • 如何在 Team Foundation 上强制发表有意义的签入评论?

    我有一个开发团队有一个坏习惯 他们写道poor签入评论 当我们必须在团队基础上查看文件的历史记录时 这使得它成为一场噩梦 我已经启用了变更集评论政策 这样他们甚至可以在签到时留下评论 否则他们不会 我们就团队的工作质量进行了一些讨论 他们很
  • 我的 strlcpy 版本

    海湾合作委员会 4 4 4 c89 我的程序做了很多字符串处理 我不想使用 strncpy 因为它不会终止 我不能使用 strlcpy 因为它不可移植 只是几个问题 我怎样才能让我的函数正常运行 以确保它完全安全稳定 单元测试 这对于生产来
  • 初始化变量的不同方式

    在 C 中初始化变量有多种方法 int z 3 与 int 相同z 3 Is int z z 3 same as int z z 3 您可以使用 int z z 3 Or just int z 3 Or int z 3 Or int z i
  • 用 C 实现 Unix shell:检查文件是否可执行

    我正在努力用 C 语言实现 Unix shell 目前正在处理相对路径的问题 特别是在输入命令时 现在 我每次都必须输入可执行文件的完整路径 而我宁愿简单地输入 ls 或 cat 我已经设法获取 PATH 环境变量 我的想法是在 字符处拆分
  • AccessViolationException 未处理

    我正在尝试使用史蒂夫 桑德森的博客文章 http blog stevensanderson com 2010 01 28 editing a variable length list aspnet mvc 2 style 为了在我的 ASP
  • 如何构建印度尼西亚电话号码正则表达式

    这些是一些印度尼西亚的电话号码 08xxxxxxxxx 至少包含 11 个字符长度 08xxxxxxxxxxx 始终以 08 开头 我发现这个很有用 Regex regex new Regex 08 0 9 0 9 0 9 0 9 0 9
  • 在Linux中使用C/C++获取机器序列号和CPU ID

    在Linux系统中如何获取机器序列号和CPU ID 示例代码受到高度赞赏 Here http lxr linux no linux v2 6 39 arch x86 include asm processor h L173Linux 内核似
  • Bing 地图运行时错误 Windows 8.1

    当我运行带有 Bing Map 集成的 Windows 8 1 应用程序时 出现以下错误 Windows UI Xaml Markup XamlParseException 类型的异常 发生在 DistanceApp exe 中 但未在用户
  • 如何将字符串“07:35”(HH:MM) 转换为 TimeSpan

    我想知道是否有办法将 24 小时时间格式的字符串转换为 TimeSpan 现在我有一种 旧时尚风格 string stringTime 07 35 string values stringTime Split TimeSpan ts new

随机推荐

  • jQuery .load() 调用不会在加载的 HTML 文件中执行 JavaScript

    这似乎是仅与 Safari 相关的问题 我在 Mac 上尝试了 4 个 在 Windows 上尝试了 3 个 但仍然没有成功 我正在尝试加载外部 HTML 文件并让嵌入的 JavaScript 执行 我尝试使用的代码是这样的 myBtn c
  • SQLAlchemy 错误 MySQL 服务器已经消失

    Error OperationalError OperationalError 2006 MySQL server has gone away 当我在 Flask 上编码项目时 我已经收到此错误 但我无法理解为什么会收到此错误 我有这样的代
  • 如何在 Flutter 中从 ByteData 加载图像小部件

    The multi image picker 2 4 11插件返回一个List
  • Facebook:有没有办法检查我是否拥有某些权限?

    我开始使用新的 Graph API 开发 Facebook 应用程序 我想检查我是否具有某些权限 例如publish stream例如 对于某个用户 我知道旧的 REST API 有users hasAppPermission http d
  • Haskell 中的“资源繁忙(文件被锁定)”错误

    我对 Haskell 很陌生 事实上 我正在努力本教程的这一部分 http learnyouahaskell com input and output files and streams我遇到了这段代码 import System IO i
  • 如何在 Ruby on Rails 中计算 32 位 CRC?

    我想计算 Ruby on Rails 中 输入字段值 的 32 位 CRC 值 需要示例代码 请帮助我 您可以使用 Ruby 的 Zlib 模块 require zlib crc32 Zlib crc32 input field value
  • 我如何访问 Intel CPU 计数器

    是否有任何小工具可以让我访问 Intel CPU 计数器收集的数据 例如 L1 L2 缓存未命中 分支预测失败 您知道现代 Core2 CPU 上有数百个此类数据 它必须在 Windows 上运行 同时能够在 Solaris FreeBSD
  • JPA 多重鉴别器值

    我们正在建立一个新项目 并决定使用 eclipselink for JPA 在创建领域模型时 我们遇到了一个问题 我们有一个称为组织的基类 我们还有供应商和客户 它们都扩展了组织 当 JPA 创建表时 我看到它使用了鉴别器 问题是供应商也可
  • 如何通过安全 FTP SSL 协议发送文件

    我感谢您就该主题提供的任何帮助 在线注册结束时 我将获取客户数据 多个字段 将它们放入 CSV 文件中 并尝试通过 SSL 协议提交给另一个客户端 但不知道这是如何完成的 我还将信息存储在本地数据库中 希望这个过程有点相似 我已经收到了来自
  • 如何从 Swift 调用 Objective-C 类的工厂方法?

    我有一个 obj c 类 它使用工厂方法将自身实例化为单例 我将该类添加到我的 Swift 桥标头中 并希望从 Swift 类调用此工厂方法 然而 XCode 不让我这么做 obj c代码是 interface MOAssistant NS
  • 生成 Rails 应用程序中使用的数据库架构的图像

    如何生成 Rails 应用程序中使用的数据库模式的图像 你有没有尝试过rake db schema dump 本质上 确保您的database yml文件正在引用您要转储的数据库 然后运行命令 它将获取所述数据库中的所有表和索引 然后将其写
  • Java 中无参构造函数和默认构造函数之间的区别

    实际上我无法理解无参数构造函数和默认构造函数之间有什么区别 import javax swing public class Test extends JFrame public Test super this setSize 200 200
  • Pygame 使用 time.sleep 等待 x 秒而不执行上面的代码

    我正在尝试在 pygame 中重新创建 Pong 并尝试根据得分者将网的颜色更改为红色或绿色 我可以在某人得分后将其保持为红色或绿色 直到另一个人得分 但是 我想在 3 秒后将网络颜色更改回黑色 我尝试使用 time sleep 3 但每当
  • 如何使用 Flask 将 JavaScript 连接到 Python 脚本?

    我用 HTML CSS 创建了一个网站 我还使用 Javascript 来处理事件 单击按钮 现在我想将 Python 脚本与其连接 更重要的是 将 Python 函数的结果返回到我的网站并在那里显示 使用 它们 考虑这样的事情 我有一个带
  • 如何创建“递归sql”

    我想建立 链接 例如 我有 5 个帖子 id 1 id 2 id 3 id 4 id 5 他们有一个序列 id 1 nextId 2 id 2 nextId 4 id 3 下一个Id 0 id 4 nextId 3 id 5 nextId
  • Azure Python SDK - 与 Azure AD 交互

    我有一个服务主体帐户 用于自动化计算和资源管理对象 不会出现任何问题 我似乎无法与之交互的是房子的 Azure AD 一侧 我正在得到一个 azure graphrbac models graph error GraphErrorExcep
  • 使用 BASH 或 awk 或 sed 或其他方式删除文件的前两行

    我试图通过不将文件打印到另一个文件来删除文件的前两行 我不是在寻找一些奇特的东西 这是我对 awk 的 失败的 尝试 awk NR gt 2 print myfile 这会抛出以下错误 awk NR gt 2 print awk synta
  • Java静态上下文

    我正在使用一个具有非静态方法调用的包 它不会让我从静态上下文中调用此方法 我无法更改非静态方法 如何调用该方法 从该类创建一个对象并调用该对象的方法 import com acme myclass MyClass obj new MyCla
  • 创建新的 Azure Cosmos DB 时缺少位置选项

    我想在我的免费 MPN 订阅下创建一个新的 Azure Cosmos DB 并希望将位置设置为 欧洲 西欧 就像我为 ResourceGroup 所做的那样 但此位置 以及许多其他位置 是无法使用 请在此处查看完整列表 https i st
  • 从 boost::filesystem::is_directory 捕获异常

    我目前正在从 boost filesystem is directory 捕获错误 并通过在异常上调用 what 向用户显示错误 这给出了失败的原因 但该错误对用户来说很奇怪 例如 boost filesystem is directory