我是iphone开发的菜鸟,我正在尝试将html数据转换为字符串格式。目前,我使用stringByConvertingHTMLToPlainText来完成此任务,但它忽略了HTML的格式。我转换的HTML数据有换行符,但stringByConvertingHTMLToPlainText只删除HtML标记,并且不格式化生成的字符串。非常感谢任何帮助。
我的代码:
NSString *temp = [[[stories objectAtIndex: storyIndex] objectForKey: @"summary"]stringByConvertingHTMLToPlainText];
HTML数据:
Holiday Inn<br/>Dedham,MA<br/>Sun May 5th 2013-Sun May 5th 2013<br/>Contact: Harry Tong at 603-978-3459<p><sub><i>-- Delivered by <a href="http://feed43.com/">Feed43</a> service</i></sub></p>
结果字符串:
Holiday InnDedham,MASun May 5th 2013-Sun May 5th 2013Contact: Harry Tong at 603-978-3459-- Delivered by "http://feed43.com/"Feed43 service
我需要:
Holiday Inn
Dedham,MA
Sun May 5th 2013-Sun May 5th 2013
Contact: Harry Tong at 603-978-3459
-- Delivered by "http://feed43.com/"Feed43 service
修改
NSString *html = [[stories objectAtIndex: storyIndex] objectForKey: @"summary"];
NSString *text = [html stringByReplacingOccurrencesOfString:@"<br/>" withString:@" \n "];
NSString *temp = [text stringByConvertingHTMLToPlainText];
答案 0 :(得分:1)
我认为你应该只更换&lt; br /&gt; (并且在旧版html的情况下可能是&lt; br&gt;)具有换行符。 Google是您编程语言中的换行符,并使用字符串替换功能。
答案 1 :(得分:1)
@Prozi是对的。你可以使用
NSString *text = [html stringByReplacingOccurrencesOfString:@"<br/>" withString:@"\n"];
执行之前删除html标记。