Я новичок в Cocoa, но не для программирования. Недавно я решил написать FTP-клиент для Mac, и поэтому впервые сделал это на том языке, который мне больше всего нравится (в Windows), а затем перешел к Cocoa, когда у меня была работа FTP-связи.Cocoa NSStream TCP-соединение с FTP
Мой вопрос (по-видимому) несколько противоречивый: как установить соединение для чтения/записи (ftp-сервера)?
То, что я до сих пор (не работает, очевидно):
NSInputStream *iStream;
NSOutputStream *oStream;
NSHost *host = [NSHost hostWithAddress:@"127.0.0.1"];
[NSStream getStreamsToHost:host port:3333 inputStream:&iStream outputStream:&oStream];
// ftp port: 3333
[iStream retain];
[oStream retain];
[iStream scheduleInRunLoop:[NSRunLoop currentRunLoop]
forMode:NSDefaultRunLoopMode];
[oStream scheduleInRunLoop:[NSRunLoop currentRunLoop]
forMode:NSDefaultRunLoopMode];
[iStream setDelegate:self];
[oStream setDelegate:self]; // which is not implemented apparently
[iStream open];
[oStream open];
// .... [iStream write: (const uint8_t *)buf maxLength:8];
, который частично основан на http://developer.apple.com/mac/library/documentation/cocoa/Conceptual/Streams/Articles/NetworkStreams.html Теперь, почему я выбрал NSStream? Поскольку в то время как этот вопрос касается только того, как подключиться к потоку FTP, весь мой проект будет включать в себя SSL, и, насколько я мог искать здесь и в Google, NSStream способен «переключиться» на SSL-соединение.
Я не смог увидеть, как создается соединение (что я обычно делаю), но я также слышал что-то о необходимости писать в поток до того, как поток откроется?
Все указатели очень ценятся, и извините, если мой вопрос раздражает - я новичок в какао :)