问题肯定会合并搜索栏上的空格

时间:2011-03-18 23:17:23

标签: objective-c

我在实现搜索栏时遇到问题。只要要搜索的字符串没有任何空格,它就可以正常工作,但是如果我引入带有空格的搜索字符串,则会显示错误。

- (void) searchBarSearchButtonClicked:(UISearchBar *)theSearchBar {

      //[self searchTableView];

    if([searchBar.text length] > 0) {


        [stories removeAllObjects];
        NSLog(@"reset stories");


        if ([stories count] == 0) {

        NSString * path = [NSString stringWithFormat:@"http://buscador.main.conacyt.mx/search?q=%@&num=%d", searchBar.text,100];
        [self parseXMLFileAtURL:path];

        //Once the query is complete, go load the view controller to show the data.
        [self performSelectorOnMainThread:@selector(showAsuntosResult) withObject:nil waitUntilDone:NO];
        }

1 个答案:

答案 0 :(得分:0)

问题不在于您的搜索栏本身,而在于您对搜索结果的处理方式。

您正在使用搜索栏文字来创建网址。 URL可能不包含空格。

要在URL中使用包含空格的字符串,您需要通过执行以下操作来对其进行%-escape:

path = [path stringByAddingPercentEscapesUsingEncoding:NSASCIIStringEncoding];