如何从C ++打开URL?

问题描述 投票:16回答:8

如何从我的C ++程序中打开URL?

可以在红宝石中做

%x(open https://google.com)

C ++中的等效项是什么?我想知道是否存在与平台无关的解决方案。但是,如果没有,我想更好地使用Unix / Mac:)

这是我的代码:

#include <stdio.h>
#include <string.h>
#include <fstream>

int main (int argc, char *argv[])
{
    char url[1000] = "https://www.google.com";

    std::fstream fs;
    fs.open(url);
    fs.close();

    return 0;
}
html c++ unix url browser
8个回答
18
投票

使用libcurl,这是一个简单的example

EDIT:如果这是关于从C ++启动Web浏览器,则可以在POSIX系统上用system调用shell命令:

system("<mybrowser> http://google.com");

通过用要启动的浏览器替换<mybrowser>。>


28
投票

您的问题可能意味着两件事:


8
投票

这是使用winsock的Windows代码示例。


3
投票

C不如您提到的脚本语言那么高级。但是,如果您想远离基于套接字的编程,请尝试使用Curl。 Curl是一个很棒的C库,具有许多功能。我已经使用了多年,并且始终推荐它。它还包括一些用于测试或shell使用的独立程序。


1
投票

已经有Windows的答案。在Linux中,我注意到open https://www.google.com总是从shell启动浏览器,因此您可以尝试:


0
投票

使用ShellExecuteA(),我的运气更好。我听说使用“ system()”时存在很多安全风险。这是我为自己的代码想到的。


0
投票

对于Linux环境,可以使用xdg-open。默认情况下,它在大多数发行版中都已安装。相对于接受的答案的好处在于,它可以打开用户的首选浏览器。


-3
投票

创建一个函数并使用Software_Developer已经提到的winsock复制代码。

© www.soinside.com 2019 - 2024. All rights reserved.