0

次のようなものを入力したい:

address[address1] = adsads
address[address2] = dsadsad
address[address3] = vadsa

それが単純な投稿であれば、私はできることを知っています:

url?address1=adsads&address2=dsadsa

しかし、投稿でアドレスオブジェクト(配列)にしたい場合、IOSでどのように作成すればよいですか?

4

3 に答える 3

0

ふむ、辞書を使えばいい。

NSMutableDictionary * argDict = [NSMutableDictinary new];
[argDict setObject:@"John" forKey:@"name"];
[argDict setObject:@"26" forKey:@"age"];
...
NSMutableString * url = [NSMutableString stringWithCapacity:30];
[url appendString:@"http://?"];
BOOL isFirstArg = YES;
for (NSString * key in [argDict allKeys]) {
    if (isFirstArg) {
        [url appendFormat:@"%@=%@", key, [argDict objectForKey:key]];
        isFirstArg = NO;
        continue;
    }
    [url appendFormat:@"&%@=%@", key, [argDict objectForKey:key]];
}

注:最初の引数を処理するためのより良い方法も見つけることができると思います:)

于 2013-01-10T10:18:13.807 に答える
0

辞書を使用することを考えました(私がそうすればうまくいくかもしれません)が、次のようなURLを渡すだけでよいと言われます:

url?address[addres1]=dsadsa&address[address2]=dsadsa

ブラウザとサーバーはそれを自動エンコードせず、[] を特殊文字として読み取るためです。

愚かな質問、すべての答えをありがとう

于 2013-01-11T10:39:34.447 に答える
-1

address1、address2、address3、...などが整数であると仮定すると、次のようにスイッチを使用して実行できます。

for (int i = 0; i < addressX; i++)
{
     switch(i)
     {
         case address1:
              address[i]=adsads;
              break;
         case address2:
              address[i]=aoao;
              break;
         case address3:
              address[i]=olol;
              break;
         case address4:
              address[i]=dodo;
              break;
         case address5:
              address[i]=lolo;
              break;
     }
}
于 2013-01-10T08:50:46.037 に答える