是否可以将文件下载到指定目录?

时间:2010-11-13 07:41:02

标签: c

我正在尝试为我的C应用程序创建一个下载器/更新工具。

我的更新程序PDL:

  1. 从webserver下载update.xml
  2. 使用fscanf检查更新版本并将浮点存储到变量
  3. 如果版本大于application
  4. 中定义的发行版本,则使用if语句检查变量
  5. 如果为真,请下载更新
  6. 如果显示为false,则显示最新
  7. C是否有任何内置函数来执行此操作? 这可能在C?

3 个答案:

答案 0 :(得分:4)

cURL(libcurl)将是一个简单的选择:
Download file using libcurl in C/C++
Downloading all files in directory using libcurl
http://curl.haxx.se/

如果您的软件基于Microsoft Windows,那么您也可以使用Wininet API:
http://msdn.microsoft.com/en-us/library/aa385473.aspx

答案 1 :(得分:1)

不是使用ANSI C,但是对于Win,请查看:

#include <Urlmon.h>
HRESULT URLDownloadToFile();

答案 2 :(得分:1)

C根本没有“内置函数”,它们是由库提供的 all 标准库不支持网络连接;你需要一个网络库,其中有很多,其中一些是特定操作系统的标准,但往往是低级别的,如BSD套接字或类似的WinSock API。

我强烈建议您不要我们使用浮点值来表示版本号,并简单地比较版本字符串。这可以避免fp精度和转换问题,并允许灵活的版本号格式,例如“1.0.1”或“1.0a”或其他。