c++上下载文件,Windows下应该调用什么命令行?(或者IE的命令行)

c++上下载文件,Windows下应该调用什么命令行?

阅读 4.4k
3 个回答

Windows的cmd里并没有直接给用户用的专门调用HTTP下载的控制台工具。如果你是程序调用你可以自带一个wget或者aria2c的Windows版可执行文件。就不用写HTTP下载代码了。

PowerShell 2里可以用

$WebClient = New-Object System.Net.WebClient
$WebClient.DownloadFile("https://www.example.com/file","C:\path\file")

PowerShell 3里有了wget语句,等同于

Invoke-WebRequest -Uri "http://www.example.com" -OutFile "C:\path\file"

不过还是aria2c功能强,可以断点续传、多线程下载。支持HTTP、FTP、BT、磁力链接之类的。

为啥用命令行下载,直接下载不可以吗?
看起来是HTTP协议的,一个简单的方法就是使用windows自带的WinHTTP来做,由于直接由内核实现,性能上主要取决于使用者,虽然下载的话,基本是不会有啥性能问题的。。。。MSDN上有相关的讨论

https://social.msdn.microsoft...

这里是官方文档
https://msdn.microsoft.com/en...

这比用socket手写http客户端要方便很多。

用Python吧,Windows不像Linux直接提供了这种支持,另外就是像楼上说的用Power-Shell

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题