0

UITextField の文字列値を取得し、それを txt ファイルに入れてから、FTP サーバーに送信しようとしています。

私は Apple の SimpleFTPSample を見て、そのコードをできる限り見直しました。私はObjective Cでプログラミングして約1か月ほどしか経っていませんが、これがどのように機能するかについてある程度の知識があると思ったので、次のコードを書きました:

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,
    NSUserDomainMask, YES);
NSString *documentsDir = [paths objectAtIndex:0];
NSString *fileName = [NSString stringWithFormat:@"%@/tobesent.txt", documentsDir];

[txttext.text writeToFile:fileName atomically:NO encoding:NSUTF8StringEncoding error:nil];
NSURL *url = [[NSURL alloc]initWithString:@"ftp://USERNAME:PASSWORD@LOCATION/tobesent.txt"];
NSInputStream *fileStream;
NSOutputStream *networkStream;

fileStream = [NSInputStream inputStreamWithFileAtPath:fileName];
[fileStream open];
networkStream = CFBridgingRelease(CFWriteStreamCreateWithFTPURL(NULL, (__bridge CFURLRef) url));
networkStream.delegate = self;
[networkStream scheduleInRunLoop:[NSRunLoop currentRunLoop] forMode:NSDefaultRunLoopMode];
[networkStream open];

これは、txttext.textにデータを入れても、FTPサーバーにデータなしで「tobesent.txt」という名前のファイルを作成するだけです。このプロセスをより簡単にするためにダウンロードできるものが他にもあることも知っていますが、それらなしでこれを達成できるかどうかを本当に知りたいです. どんな助けでも大歓迎です!

4

2 に答える 2

1

実際にはデータを送信していません。ファイルからNSInputStreamを作成し、それを使用して何も実行しません。また、サーバー上のファイルに対してNSOutputStreamを作成し、それを使用して何も実行しません。入力ストリームから読み取り、出力ストリームに書き込みます。

于 2013-01-07T23:48:47.170 に答える
0

libCurl をチェックしてみてください - http://curl.haxx.se/libcurl/

于 2013-01-07T23:53:36.617 に答える