I am building an application (on windows using Dev-C++) and I want it to download a file. I am doing this using libcurl (I have already installed the source code using packman). I found a working example (http://siddhantahuja.wordpress.com/2009/04/12/how-to-download-a-file-from-a-url-and-save-onto-local-directory-in-c-using-libcurl/) but it doesn't close the file after download is complete. I would like someone to give an example on how to download a file, either in c or c++. Thanks in advance!
相关问题
- Multiple sockets for clients to connect to
- What is the best way to do a search in a large fil
- Google Apps Script: testing doPost() with cURL
- glDrawElements only draws half a quad
- Index of single bit in long integer (in C) [duplic
The example you are using is wrong. See the man page for easy_setopt. In the example write_data uses its own FILE, *outfile, and not the fp that was specified in CURLOPT_WRITEDATA. That's why closing fp causes problems - it's not even opened.
This is more or less what it should look like (no libcurl available here to test)
Updated: as suggested by @rsethc
types.h
andeasy.h
aren't present in current cURL versions anymore.Just for those interested you can avoid writing custom function by passing NULL as last parameter (if you do not intend to do extra processing of returned data).
In this case default internal function is used.
Details
http://curl.haxx.se/libcurl/c/curl_easy_setopt.html#CURLOPTWRITEDATA
Example