C++ библиотека FTP? [закрытый]

Ожидание Python 3k , где кодировка по умолчанию источника будет UTF-8?

21
задан Drew Chapin 26 September 2012 в 14:16
поделиться

6 ответов

Чтобы проинформировать тех, кто ищет хорошую библиотеку / класс FTP для C ++, я нашел очень хорошую и простую в использовании. Использовать его так же просто, как использовать FTP-библиотеку C #, которую уже создали многие люди. Если вы еще не пробовали, вот пример кода:

nsFTP::CFTPClient ftpClient;
nsFTP::CLogonInfo logonInfo("localhost", 21, "anonymous", 
                                      "anonymous@user.com");

// connect to server

ftpClient.Login(logonInfo);

// get directory listing

nsFTP::TSpFTPFileStatusVector list;
ftpClient.List("/", list);

// iterate listing

for( nsFTP::TSpFTPFileStatusVector::iterator it=list.begin(); 
                                         it!=list.end(); ++it )
    TRACE("\n%s", (*it)->Name().c_str());

// do file operations

ftpClient.DownloadFile("/pub/test.txt", "c:\\temp\\test.txt");

ftpClient.UploadFile("c:\\temp\\test.txt", "/upload/test.txt");

ftpClient.RenameFile("/upload/test.txt", "/upload/NewName.txt");

ftpClient.Delete("/upload/NewName.txt");

// disconnect

ftpClient.Logout();

http://www.codeproject.com/Articles/8667/FTP-Client-Class и наслаждайтесь!

И он полностью запрограммирован на C ++ с STL (без MFC)

Прошу прощения за переключение ответа на этот пост, потому что я думаю, что это лучшее решение, чем использовать те, которые написаны на C.

18
ответ дан 17 October 2019 в 01:13
поделиться

libftp (хотя это в C)
ftplib (опять же, похоже на C)
libCurl , похоже, имеет возможности FTP.

Найти реализацию C ++ может быть сложно, но обернуть библиотеку C в классы C ++ не получится. Это не составит труда, если вам действительно нужен интерфейс C ++.

Edit: Только что увидел, что вы предпочитаете предварительно скомпилированную библиотеку. Если это абсолютное требование, вам, вероятно, придется использовать библиотеку C, поскольку проблемы с ABI более чем вероятно означают, что предварительно скомпилированная библиотека C ++ вам не подойдет.

9
ответ дан 17 October 2019 в 01:13
поделиться

Попробуйте libCurl . Он имеет привязки для C ++ ( cURLpp ) и 30 других языков.

8
ответ дан 17 October 2019 в 01:13
поделиться

Взгляните на Poco Project выпущен под лицензией на программное обеспечение Boost.

Они обеспечивают реализацию FTP RFC 959. Вы можете выполнять вход в систему или обновлять файлы, изменять режимы и т. Д. Как функции класса FTPSession .

С уважением,
Ovanes

PS Это многоплатформенная библиотека, которая также работает в Windows.

2
ответ дан 17 October 2019 в 01:13
поделиться

QT имеет класс QFtp , который может содержать все, что вам нужно.

0
ответ дан 17 October 2019 в 01:13
поделиться

Попробуйте Ultimate TCP / IP, который поддерживает FTP (и вы можете просто скомпилировать в части FTP). Это отличная библиотека (и она бесплатная).

http://www.codeproject.com/KB/MFC/UltimateTCPIP.aspx

-1
ответ дан 17 October 2019 в 01:13
поделиться
Другие вопросы по тегам:

Похожие вопросы: