Web Url包含我的NSXMLParser未解析的西班牙语字符 [英] Web Url contains Spanish Characters which my NSXMLParser is not parsing

查看:79
本文介绍了Web Url包含我的NSXMLParser未解析的西班牙语字符的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我从服务器解析Web URL并将它们存储在Strings中,然后在Webview上显示它。但现在我正在解析西班牙语单词,如

I am Parsing Web urls from server and storing them in Strings and then displaying it on Webview. But now when i am parsing Spanish words like

http://litofinter.es.milfoil.arvixe.com/litofinter/PDF/Presentación_LITOFINTER_(ES).pdf

它接受它

PDF File Name  ++++++ http://litofinter.es.milfoil.arvixe.com/litofinter/PDF/Presentaci
PDF File Name  ++++++ ón_LITOFINTER_(ES).pdf

即两个不同的字符串...我知道我必须做一个小的改变,附加字符串,但我现在无法做到,任何人都可以帮助我。这是我的代码: -

i.e two different strings... i know i have to make small change that is append the string but i am not able to do it now, can anyone help me out. Here is my code :-

- (void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName attributes:(NSDictionary *)attributeDict
{
    currentElement = elementName;

    if([currentElement isEqualToString:@"category"]) {

        NSLog(@"Current element in Category:- %@",currentElement);
        obj = [[Litofinter alloc]init];
        obj.productsArray = [[NSMutableArray alloc]init];
    }

    if([currentElement isEqualToString:@"Product"]) {
        obj.oneObj = [[Products alloc]init];
    }

}

- (void)parser:(NSXMLParser *)parser foundCharacters:(NSString *)string
{
    if([currentElement isEqualToString:@"Logo"]) {
        obj.cLogo=[NSString stringWithFormat:@"%@",string];
        NSLog(@"Logo to be saved in Array :- %@",obj.cLogo);
    }

    if([currentElement isEqualToString:@"Name"]) {

        obj.cName=[NSString stringWithFormat:@"%@",string];
        NSLog(@"Name to be saved in Array :- %@",string);
    }

    if([currentElement isEqualToString:@"cid"]) {

        obj.cId=(int)[NSString stringWithFormat:@"%@",string];
        NSLog(@"CID to be saved in Array :- %@",string);
    }

    if([currentElement isEqualToString:@"pid"]) {
        //obj.oneObj.id = (int)[NSString stringWithFormat:@"%@",oneBook.id];
        obj.oneObj.id = (int)[oneBook.id intValue];
    }

    if([currentElement isEqualToString:@"Title"]) {
        obj.oneObj.title = [NSString stringWithFormat:@"%@",string];
    }

    if([currentElement isEqualToString:@"Thumbnail"]) {
        obj.oneObj.thumbnail= [NSString stringWithFormat:@"%@",string];
    }

    // problem occuriing while parsing Spanish characters...

    if([currentElement isEqualToString:@"pdf"]) {
        obj.oneObj.pdf = [NSString stringWithFormat:@"%@",string];
        NSLog(@"PDF File Name  ++++++ %@",string);
    }
}

- (void)parser:(NSXMLParser *)parser didEndElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName
{
    if([elementName isEqualToString:@"category"]) {
        NSLog(@"Current element in End Element Category:- %@",currentElement);

        [TableMutableArray addObject:obj];

    }

    if([elementName isEqualToString:@"Product"]) {

        [obj.productsArray addObject:obj.oneObj];
    }

    currentElement = @"";
}

我将感激你。

推荐答案

declare NSString in .h file;

in Did Start parse

str=@"";

if([currentElement isEqualToString:@"pdf"]) {
    str=[str stringByAppendingString:string];
    obj.oneObj.pdf = [NSString stringWithFormat:@"%@",str];
    NSLog(@"PDF File Name  ++++++ %@",str);
}

这篇关于Web Url包含我的NSXMLParser未解析的西班牙语字符的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆