2009-07-15 4 views
3

C++로 URL을 다운로드하고 싶습니다. 뭔가 간단 같은 :URL을 C++로 다운로드

///usr/home/myfile.dat 이상적으로

 
std::string s; 
s=download("http://www.example.com/myfile.html"); 

는이 같은 URL을 포함 할 것

Boost에서 asio를 사용하고 있었지만 실제로는 ftp와 같은 프로토콜을 처리하는 코드가없는 것처럼 보였습니다. https. 이제 나는 QT가 내가 필요로하는 것을 더 많이 가지고 있다는 것을 발견했다 (http://doc.trolltech.com/2.3/network.html).

Qt로 전환하는 것이 유혹적이지만 약간 무거워서 많은 부스트 ​​기능을 교차합니다. 아직 다른 API (Qt)를 배울만한 가치가 있습니까? 아니면 Boost가 제 생각보다 더 많이 할 수 있습니까?

답변

16

직접적인 대답은 아니지만 libCURL을 생각해보십시오. 이는 정확히 사용자가 설명하는 내용입니다.

예제 응용 프로그램은 here이며, 특히 this은 사용법이 얼마나 간단한 지 보여줍니다.

+0

+1 for libCURL. 그것은 이것을 위해 정확하게 만들어졌습니다. 바로 C 바인딩 (C++ 래퍼가 있고 사용하지 않았 음)입니다. – Joe

+0

코드 예제를 포함 할 수 있습니까? –

+0

@Joe Windows 용 MinGW로 컴파일 된 예제가 있습니까? MinGW를 사용하는 창에이 동일한 예제가 필요합니다. – programmer

3

정말 멋진 네트워킹 제품이 아니기 때문에 저는 네트워킹 관련 자료로 Qt를 사용하지 않을 것입니다. 누락 된 조각이 많이 있습니다. 나는 당신이 GUI 노련함을 필요로하는 경우에 전환 할 것입니다.

libCURL은 사용하기가 쉽고 Qt 항목보다 강력합니다.

2

Poco Project에는 플랫폼 간 HTTP 및 FTP (및 기타 많은 것들)에 대한 클래스가 있습니다. 부스트와 오버랩이 있습니다. 나는 최근에 found이지만 이것을 사용하지는 않았다.