0

サーバーに複数のファイルをアップロードしようとしましたが、目標を達成できませんでした。現在の状況では、いくつかの csv ファイルを送信できますが、アーカイブ内のすべての csv を送信することはできません (アーカイブには、セッションと、どのファイルがどのセッションに属しているかを知るために必要なすべての値が保存されます)。ファイルはサーバーに送信されていますが、ボタンをもう一度押して残りの csv ファイルをサーバーにアップロードする必要があります。

NSMutableArray *rootObject = [NSKeyedUnarchiver unarchiveObjectWithFile:path];
NSLog(@"total objects counted: %d", [rootObject count]);

    for ( int i = 0; i < [rootObject count]; i++ ) {
        NSLog(@"current object: %d", i);
        [self sendCSVtoServer: rootObject[0]];
        [rootObject removeObjectAtIndex: 0];
    }

[NSKeyedArchiver archiveRootObject:rootObject toFile:path];

私のsendCSVtoServer関数は次のようになります

- (void) sendCSVtoServer: ( Session * ) archive_session {

    NSLog(@"file name: %@", [archive_session getFile]);

    NSURL *url = [NSURL URLWithString:@"http://xx.x.xxx.xxx:3000/xxx/xxxxxxxx"];

    ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:url];

    [request setPostValue: [archive_session getEmail] forKey:@"email"];
    [request addFile: [archive_session getFile] forKey:@"csv"];
    [request setDelegate:self];
    [request startSynchronous];

}

どんなアイデアでも大歓迎です、ありがとう:)

4

1 に答える 1

0

これが答えです.... :/愚かな私

NSMutableArray *rootObject = [NSKeyedUnarchiver unarchiveObjectWithFile:path];
NSLog(@"total objects counted: %d", [rootObject count]);

    for ( int i = 0; i < [rootObject count]; i++ ) {
        NSLog(@"current object: %d", i);
        [self sendCSVtoServer: rootObject[i]];
    }

[rootObject removeAllObjects];
[NSKeyedArchiver archiveRootObject:rootObject toFile:path];
于 2013-03-04T23:50:22.020 に答える