是否有 glibc API 可以在 Linux 上找到 MIME 类型的默认处理应用程序?

是否有 glibc API 可以在 Linux 上找到 MIME 类型的默认处理应用程序?

我想在我的 C 程序中找到默认的处理应用程序。是否有与xdg-mime query default mime-typeLinux 上具有相同功能的 C API ?

答案1

glibc对 MIME 类型一无所知; API 函数位于桌面环境 API 级别,并且认识freedesktop.org到协调它们是一项不可能的任务,因此它们仅指定 shell 级别接口。您可以通过popen()特定的桌面环境使用它或编写代码。

答案2

我不相信有一个 C API 可以像 xdg-mime 的工作方式一样查询 mime 类型。 xdg-mime 只是一个 shell 脚本,它查询您的桌面环境(Gnome、KDE ​​或其他),并运行适当的命令从 DE 的内部配置中获取 MIME 类型。

您可以复制 shell 脚本的行为,或者直接从 C 调用 shell 脚本。XDG 实用程序网页似乎没有显示任何有关 C API 的信息。

相关内容