2013-05-16 27 views
0

我以下面的格式获取HTML内容。ios - 如何解析HTML文件?

wsse:BinarySecurityToken wsu:Id="uuid:07747f2a-4be4-48fa-9654-5e12235f6040" ValueType="http://schemas.xmlsoap.org/ws/2009/11/swt-token-profile-1.0" EncodingType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#Base64Binary" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"> 
aHR0cCUzYSUyZiUyZnNjaGVtYXMubWNk</wsse:BinarySecurityToken>< 

在下面的代码我得到 WSU:编号= " UUID:07747f2a-4be4-48fa-9654-5e12235f6040 "的ValueType = " http://schemas.xmlsoap.org/ws/2009/11/swt-token-profile-1.0" EncodingType = " http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#Base64Binary" xmlns:wsu = " http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"的xmlns:= WSSE " http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"> aHR0cCUzYSUyZiUyZnNjaGVtYXMubWNk

- (void)connectionDidFinishLoading:(NSURLConnection *)connection 
{ 
if(_data) 
{ 
    NSString* content = [[NSString alloc] initWithData:_data 
               encoding:NSUTF8StringEncoding]; 
    NSLog(@"Content :%@",content); 

    NSRange divRange = [content rangeOfString:@"wsse:BinarySecurityToken" options:NSCaseInsensitiveSearch]; 

    if (divRange.location != NSNotFound) 
    { 
     NSRange endDivRange; 

     endDivRange.location = divRange.length + divRange.location; 
     endDivRange.length = [content length] - endDivRange.location; 
     endDivRange = [content rangeOfString:@"=<" options:NSCaseInsensitiveSearch range:endDivRange]; 

     if (endDivRange.location != NSNotFound) 
     { 
      divRange.location += divRange.length; 
      divRange.length = endDivRange.location - divRange.location; 


      NSLog(@"BinarySecurityToken : %@",[content substringWithRange:divRange]); 
     } 
    } 

    [webView loadHTMLString:content baseURL:_url]; 

} 

}

我想输出作为aHR0cCUzYSUyZiUyZnNjaGVtYXMubWNk。

任何想法?提前致谢。

+0

昨天你接受了同样的答案,现在什么? http://stackoverflow.com/questions/16566129/ios-how-to-parse-html-content-in-ios – Buntylm

+0

它有一些属性,也打印与令牌。你能帮我解决这个问题吗? –

+1

使用我的方法nd调用它使用'NSString * token = [self stringBetweenString:@“sse:BinarySecurityToken>”andString:@“”];' – Buntylm

回答

0

正如你在讨论你有NSString *token = @"<wsse:BinarySecurityToken>aHR0cCUzYSUyZiUyZnNjaGVtYWd0Sjk0JTNk</wsse:BinarySecurityToken>"; 和标签之间的标记那么你可以替换不需要的字符。

NSString *str = [token stringByReplacingOccurrencesOfString:@"<wsse:BinarySecurityToken>" withString:@""];;

然后

NSString *correctToken = [str stringByReplacingOccurrencesOfString:@"</wsse:BinarySecurityToken>" withString:@""];;