• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Pobieranie pliku z serwera FTP - C++

0 głosów
124 wizyt
pytanie zadane 10 lutego w C i C++ przez Sknerus Nowicjusz (120 p.)
Mam problem. Chciałbym po prostu pobrać plik .txt  na dysk (Borland C++ Builder 6). Czy mógłby ktoś dać po prostu kawałek kodu/instrukcję po polsku jak to zrobić? Z góry dziękuję!

3 odpowiedzi

0 głosów
odpowiedź 11 lutego przez j23 VIP (101,220 p.)
0 głosów
odpowiedź 11 lutego przez adrian17 Mędrzec (178,500 p.)
edycja 11 lutego przez adrian17
To wygląda dość ładnie i współcześnie (...zbyt współcześnie na Buildera 6. Czemu go używasz?), choć też niedojrzale:

https://github.com/embeddedmz/ftpclient-cpp

edit: inną sprawą jest, że FTP to ogólnie rzecz której bym nie chciał robić w C++ie.
komentarz 11 lutego przez Sknerus Nowicjusz (120 p.)

Skorzystałem z tego, działa, dzięki smiley

komentarz 11 lutego przez Sknerus Nowicjusz (120 p.)

@adrian17, Nadal mam problem. Napisałem sobie tylko dla testu mały programik w Code::Blocks. 

#include <iostream>
#include <fstream>
#include "FTPClient.h"

using namespace std;

string zapis;

fstream plik;

int main()
{
    cout << "Co chcesz zapisac?" << endl;
    cin >> zapis;

    plik.open("plik.html",ios::out);
    plik << "<html>" << endl << "<head>" << endl << "<title> TEST </title>" << endl << "</head>" << endl << "<body>" << endl << "<h1>" << zapis << "</h1>" << endl << "</body>" << "</html>";

    FTPClient.InitSession("moj serwer", 21, "moja nazwa", "moje haslo");
    FTPClient.UploadFile("plik.html", "/public_html/plik.html");

    return 0;
}

I wywala |error: 'FTPClient' was not declared in this scope|. Prosiłbym o pomoc, a nie krytykowanie mojego dziwnego sposobu na program smiley :))

komentarz 11 lutego przez Sknerus Nowicjusz (120 p.)
Znaczy wiem, o co chodzi. Bo zadeklarowane jest ,,FTPClient.h'' a w kodzie jest ,,FTPClient''. Tyle że jeśli w kodzie wpisze się ,,FTPClient.h'' to on uznaje to ,,.h'' jako np. ,,.InitSession''
komentarz 11 lutego przez j23 VIP (101,220 p.)

Ktoś tu chyba w klasy nie umie...

int main()
{
	string zapis;

	cout << "Co chcesz zapisac?" << endl;
	cin >> zapis;
 
	ofstream plik("plik.html");
	plik << "<html>" << endl << "<head>" << endl << "<title> TEST </title>" << endl << "</head>" << endl << "<body>" << endl << "<h1>" << zapis << "</h1>" << endl << "</body>" << "</html>";
	plik.close();

	CFTPClient ftp([](const std::string&){ std::cout << strLogMsg << std::endl; });

	ftp.InitSession("moj serwer", 21, "moja nazwa", "moje haslo");
	ftp.UploadFile("plik.html", "/public_html/plik.html");
 
	return 0;
}

 

komentarz 12 lutego przez Sknerus Nowicjusz (120 p.)
edycja 12 lutego przez Sknerus
No nie umie, ale usiłuje się nauczyć (i mu nie idzie). Dzięki!

EDIT: Sorry, że wam zawracam głowę, ale znowu nie działa....

error: 'strLogMsg' was not declared in this scope
0 głosów
odpowiedź 11 lutego przez mokrowski VIP (102,980 p.)
Stosunkowo łatwym rozwiązaniem będzie użycie libcurl. To taki "scyzoryk szwajcarski" do podobnych zastosowań.

Podobne pytania

0 głosów
1 odpowiedź 38 wizyt
pytanie zadane 30 grudnia 2018 w C i C++ przez mo290103 Obywatel (1,600 p.)
0 głosów
0 odpowiedzi 371 wizyt
pytanie zadane 20 października 2017 w PHP, Symfony, Zend przez Jose Nowicjusz (120 p.)
0 głosów
1 odpowiedź 131 wizyt
pytanie zadane 10 września 2016 w PHP, Symfony, Zend przez SzinDzeks Początkujący (310 p.)
Porady nie od parady
Możesz ukryć, zamknąć lub zmodyfikować swoje pytanie, za pomocą przycisków znajdujących się pod nim. Nie krępuj się poprawić pochopnie opublikowanego pytania czy zamknąć go po uzyskaniu satysfakcjonującej odpowiedzi. Umożliwi to zachowanie porządku na forum.Przyciski pytania

63,385 zapytań

109,654 odpowiedzi

229,100 komentarzy

44,408 pasjonatów

Przeglądających: 282
Pasjonatów: 21 Gości: 261

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto dwie polecane książki warte uwagi. Pełną listę znajdziesz tutaj.

...