SWIFT/iOS:将 XML 数据(RSS 提要)解析为明文,将图像和视频添加到 textview

Posted

技术标签:

【中文标题】SWIFT/iOS:将 XML 数据(RSS 提要)解析为明文,将图像和视频添加到 textview【英文标题】:SWIFT/iOS: Parse XML data (RSS Feed) into clear text, add to textview with images and videos 【发布时间】:2015-04-22 08:28:56 【问题描述】:

我环顾四周,我目前的情况使用 MWFeedParser,这是一个很棒的解析器。我的应用程序所做的是阅读新闻网站提要,在表格中显示新闻报道,然后选择您想要的报道并在新的 ViewController 中显示完整报道。

到目前为止,我已经关闭了此功能,但我正在努力处理文本。在下载的 XML 数据上使用 .dataUsingEncoding(NSUTF16StringEncoding) 后,这会将不可读的文本转换为清晰的可读文本。

当我必须实现图像的添加时出现了我的问题,我有一种方法可以获取图像并将其添加到标题旁边的表格视图中的故事中,但我不知道如何保留结构我的全文 ViewController 上的文本与新闻网站上的一样(因此将图像添加到文本的右侧:示例,第二段之后)

如果有人能告诉我如何在段落的位置添加适当的间距,那就太棒了。对此文本的一般操作会有所帮助到目前为止我完全一无所知。

【问题讨论】:

见这里; ***.com/questions/20930462/… 请添加来自站点的无格式文本示例 这是您从 rss 提要中获得的文本示例:iossoftware.de/samplecontent/sample.txt 【参考方案1】:

我猜,根据 cmets 中 @pi1000 提供的文本示例,给您带来麻烦的文本是 html

如果确实如此,我建议在你的文本视图中使用 NSAttributedString,我猜这在你的完整故事 ViewController 中。

let encodedData = encodedString.dataUsingEncoding(NSUTF8StringEncoding)!
let attributedOptions : [String: AnyObject] = [
    NSDocumentTypeDocumentAttribute: NSHTMLTextDocumentType,
    NSCharacterEncodingDocumentAttribute: NSUTF8StringEncoding
]
let attributedString = NSAttributedString(data: encodedData, options: attributedOptions, documentAttributes: nil, error: nil)!

另外,如果您正在处理任意 Internet 内容,我建议您在完整故事 ViewController 中使用 UIWebView 或 WKWebView 而不是 textview,因为这些类在处理任意 HTML 方面要好得多。

【讨论】:

是的,我知道那种方法,但我需要包含图片和视频。 @pi1000 对于您的需要,请使用 UIWebView 或 WKWebView,而不是 UITextView。使用方法是:webView.loadHTMLString(text, baseURL: nil).

以上是关于SWIFT/iOS:将 XML 数据(RSS 提要)解析为明文,将图像和视频添加到 textview的主要内容,如果未能解决你的问题,请参考以下文章

从 Feedburner RSS 提要中获取原始 XML 数据

RSS 提要 XML 文件有多大?

LINQ TO XML 解析 RSS 提要

使用 XML 包 R 解析 RSS 提要

解析 XML(RSS 提要)的 PHP 错误

将图像添加到 RSS 提要的正确方法?