Forum: PC-Programmierung fopen einer URL Adresse


von Mike (Gast)


Lesenswert?

Hallo
ich möchte gern einige Dateien(.jpg) aus dem Internet über eine 
geeignete Funkion auslesen und abspeicher. Ich programmiere in visual 
C++. Mit der Funktion fopen() kann ich nur lokale Datein öffnen jedoch 
keine Adressen aus dem Netz.
Muss ich da irgendwas besonderes beachten?

von Sven P. (Gast)


Lesenswert?

fopen() geht meistens immer nur lokal. Für HTTP/FTP und einige Andere 
gibts z.B. CURL.

von Stefan B. (Gast)


Lesenswert?

Ja. Du musst dich mit der Programmierung von Sockets befassen. Mir 
haben die Beispiele auf Codeproject.com geholfen.

http://www.codeproject.com/info/search.aspx?artkw=socket

Bsp:

Beginning Winsock Programming - Simple TCP server
By Nishant Sivakumar
http://www.codeproject.com/KB/IP/WinSockIntro01.aspx

Beginning Winsock Programming - Simple TCP client
By Nishant Sivakumar
http://www.codeproject.com/KB/IP/winsockintro02.aspx

von Arc N. (arc)


Lesenswert?

Falls das "reines" C++ werden soll, siehe oben.
Wird das .NET-Framework verwendet, geht das ganze wesentlich einfacher
1
WebClient^ client = gcnew WebClient();
2
client->DownloadFile(urlString, localFileName);
3
// sollen die Daten noch vorher irgendwie bearbeitet werden
4
// geht das z.B. mit 
5
array<byte>^ data = client->DownloadData(urlString);
6
// ...
7
File->WriteAllBytes(localFileName, data);

von Sven P. (Gast)


Lesenswert?

Ich würde dir trotzdem CURL empfehlen. CURL kann:
FTP, FTPS, HTTP, HTTPS, SCP, SFTP, TFTP, TELNET, DICT, LDAP, LDAPS. Das 
ganze natürlich mit SSL, Kerberos und so weiter, es kommt mit Proxies 
und Authentifizierung klar, verfolgt HTTP-Umleitungen und setzt 
HTML-Formulare ab.

Dafür würde ich mich nich mehr freiwillig mit Sockets herumschlagen, 
wenns nicht unbedingt nötig ist, das können andere besser als ich.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.