1

次のような文字列があります。

http://feedproxy.google.com/~r/MakePartsFast/~3/1dZEOLADapg/

この文字列を使用してhtmlページをロードしたいと思います。しかし、文字列の最後に「/」があるため、URLがnullになります。

私のコードは次のとおりです。

NSURL *ur=[NSURL URLWithString:Mystring];
        NSLog(@"%@",ur); //getting null value

    NSURLRequest *requestObj = [NSURLRequest requestWithURL:ur];

        NSLog(@"%@",requestObj);

では、この最後の「/」を文字列から削除するにはどうすればよいですか??

4

5 に答える 5

9

最後の のせいで'/'よろしいですか?'~'真ん中のキャラのせい?

どちらの方法でも、最後の文字を確認するには、次のようにします。

unichar last = [urlString characterAtIndex:urlString.length - 1];
if (last == '/')
    urlString = [urlString substringToIndex:urlString.length - 1];
于 2012-12-20T13:19:47.410 に答える
3

このコードを試してください...

    NSString *Mystring = @"http://feedproxy.google.com/~r/MakePartsFast/~3/1dZEOLADapg/";
    if ([Mystring isEqualToString:@""]||[Mystring isEqual:nil]) {

        NSLog(@"\n\n String is NULL");
    }
    else {
        NSString *TempURl = [Mystring substringToIndex:[Mystring length]-1];

        NSString *urlstr =[TempURl stringByReplacingOccurrencesOfString:@" " withString:@""];
        urlstr =[urlstr stringByReplacingOccurrencesOfString:@"\n" withString:@""];

        urlstr =[urlstr stringByReplacingOccurrencesOfString:@"\t" withString:@""];
        [urlstr retain];

        NSURL *ur=[NSURL URLWithString:urlstr];
        NSLog(@"%@",ur); //now get string value here

        //        NSURLRequest *requestObj = [NSURLRequest requestWithURL:ur];
        //        
        //        NSLog(@"%@",requestObj);
    }

ログアウトしました : http://feedproxy.google.com/~r/MakePartsFast/~3/1dZEOLADapg

これがあなたを助けることを願っています...

于 2012-12-20T13:29:12.963 に答える
1

次のように文字列をエンコードする必要があると思います。

NSString *encodedString = [Mystring stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
于 2012-12-20T13:21:01.057 に答える
1

すべての場合に文字列から最後の文字を削除する必要があることが確実な場合は、次のように newString を取得できます。

NSString *newString = [oldString substringToIndex:[oldString length]-1];
于 2012-12-20T13:23:46.767 に答える
0

これを試してみてください

NSString * Mystring=@"http://feedproxy.google.com/~r/MakePartsFast/~3/1dZEOLADapg/";
[alfa substringToIndex:alfa.length-1];
于 2012-12-20T13:21:56.580 に答える