0

これは、サポート ファイルから txt ファイルをアップロードするための私のコードです。

NSString *filePath = [[NSBundle mainBundle] pathForResource:@"serverIP" ofType:@"txt"];  
    NSData *myData = [NSData dataWithContentsOfFile:filePath];  
    NSLog(@"data %@",myData);

    //url for the server
    NSString *urlString = @"http://192.168.2.111/myupload/upload.php";




    NSMutableURLRequest *request = [[[NSMutableURLRequest alloc] init] autorelease];
    [request setURL:[NSURL URLWithString:urlString]];
    [request setHTTPMethod:@"POST"];

    NSString *boundary = [NSString stringWithString:@"-----------14737809831466499882746641449"];
    NSString *contentType = [NSString stringWithFormat:@"multipart/form-data; boundary=%@",boundary];
    [request addValue:contentType forHTTPHeaderField: @"Content-Type"];

    /*
     now lets create the body of the post
     */
    NSMutableData *body = [NSMutableData data];
    [body appendData:[[NSString stringWithFormat:@"\r\n--%@\r\n",boundary] dataUsingEncoding:NSUTF8StringEncoding]]; 
    [body appendData:[[NSString stringWithString:@"Content-Disposition: form-data; name=\"userfile\"; filename=\"serverIP.txt\"\r\n"] dataUsingEncoding:NSUTF8StringEncoding]];
    [body appendData:[[NSString stringWithString:@"Content-Type: application/octet-stream\r\n\r\n"] dataUsingEncoding:NSUTF8StringEncoding]];
    [body appendData:[NSData dataWithData:myData]];
    [body appendData:[[NSString stringWithFormat:@"\r\n--%@--\r\n",boundary] dataUsingEncoding:NSUTF8StringEncoding]];
    // setting the body of the post to the reqeust
    [request setHTTPBody:body];

    // now lets make the connection to the web
    NSData *returnData = [NSURLConnection sendSynchronousRequest:request returningResponse:nil error:nil];
    NSString *returnString = [[NSString alloc] initWithData:returnData encoding:NSUTF8StringEncoding];

    NSLog(@"returnString=%@",returnString);

これはアップロードする私のコードですが、私は多くの問題に直面しているため、誰でもこのためのphpを提供できます。

いいえ、Maulik さん、私の説明では不十分かもしれません。例を挙げましょう。file.txt という名前のファイルがあり、そのサイズは 30MB で、ファイルの内容を読み取ると、30MB の内容がすべて表示されます。sendSynchronousRequest メソッドで、ファイルの最後のポイントに到達しない限り、最大 10 MB のデータとエージング呼び出しを要求したいと考えています。(簡単に言えば、ループを使用してリクエストを部分的にサーバーに送信したい)

4

0 に答える 0