-1

この方法でURLをエンコードするためにこれを行っていますが、機能していません.NSLogで結果を取得しましたが、同じURLは何も変更されていません.

この問題を整理するのを手伝ってください。

以下は私のコードです:

 NSString *unencodedUrlString = 

[@"http://www.demii.com/demo/dooponz/admin/index.php/chat/new_message/4/1/you/2,7" 

stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];

NSLog(@" %@", unencodedUrlString);

前もって感謝します

4

2 に答える 2

2

コンマは有効な URL 文字であるため、stringByAddingPercentEscapesUsingEncoding「2,7」はそのままにして、「2%2C7」に置き換えません。

コンマをパーセントエスケープに置き換えたい場合(質問へのコメントから理解しているように)、CFURLCreateStringByAddingPercentEscapes 代わりに次を使用できます。

NSString *str = @"http://www.demii.com/demo/dooponz/admin/index.php/chat/new_message/4/1/you/2,7";
NSString *encoded = CFBridgingRelease(CFURLCreateStringByAddingPercentEscapes(kCFAllocatorDefault,
                (__bridge CFStringRef)(str), NULL, CFSTR(","), kCFStringEncodingUTF8));
NSLog(@"%@", encoded);

出力:

http://www.demii.com/demo/dooponz/admin/index.php/chat/new_message/4/1/you/2%2C7

4 番目のパラメーターCFSTR(",")は、コンマが有効な URL 文字であってもパーセント エスケープに置き換える必要があることを指定します。

于 2013-06-11T10:16:10.167 に答える
0

これを使って

    NSString *str = [NSString stringWithFormat:@"http://www.demii.com/demo/dooponz/admin/index.php/chat/new_message/4/1/you/2,7"];
    NSString *path = [str stringByReplacingOccurrencesOfString:@"," withString:@"/"];
    NSLog(@"%@",path);

これは何もしませんが、 になり,ます/

于 2013-06-11T10:05:35.310 に答える