gpt4 book ai didi

xml - 从 RSS 提要中读取图像,然后将其存储到 iPhone 应用程序中

转载 作者:行者123 更新时间:2023-11-29 13:48:37 27 4
gpt4 key购买 nike

希望有人能帮忙。我很感激这里有一些类似的问题,但对我来说不够具体。

我正在自学 iOS,因此决定从 Wordpress 网站编写一个简单的 RSS 阅读器应用程序。一切正常,但现在我想尝试将页面存储在 iOS 中,以便在离线时阅读。我认为这将是学习如何编码和存储数据的好方法。

读取 XML 节点并存储标题、描述等都很好,可以正常工作。我遇到的问题是提要中嵌入了图像。如果我读取并存储“content:encoded”XML 信息,然后在工作正常的 webView 中查看该信息,除非我处于离线状态,此时除图像外一切正常,因为这只是一个 HTML 引用。

我想我想

a) 识别图像 URL,然后将其从 content:encoded 中删除b) 下载并存储在我的数组中,与帖子相关联c) 然后再次读回图像。

或者方法不同但效果相似的东西。

如果有一种方法可以添加新的 XML“featuredimage”节点或类似节点,我认为这会相对简单,但我不知道该怎么做。

非常感谢您对此的任何想法/指点,非常感谢。

最佳答案

我会建议一种稍微不同的方法,我认为这应该会使事情变得更容易:

  1. 识别图像:

您可以使用任何 RegEx library让 iOS 解析你的 content:encoded信息;

  1. 下载图片:

使用ASIHTTPRequest或 NSUURL 请求下载图片并存储在本地;

  1. 修改content:encoded信息:

修改<img>标记以便其 src属性设置为本地存储图像(而不是外部图像);您可以使用与第 1 点中相同的方法来执行此操作。换句话说,假设您有这样一张图片:

`<img src="http://xxxx.yyy.zzzz/image.png" />`

您可以将其更改为:

`<img src="image.png" />`
  1. 适当指定baseURL将 HTML 加载到 UIWebView 时:

如果您指定 baseURL调用 loadHTMLString:baseURL: 时选择器,任何“本地”uri 都将根据您指定的 baseURL 进行解析。如果您决定将图像存储在文档目录中,那么您可以这样做:

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
[_label loadHTMLString:htmlString baseURL:[NSURL fileURLWithPath:documentsDirectory]];

这样任何图像都像:

`<img src="localImage.png" />`

将在本地检索。

希望这对您有所帮助。

关于xml - 从 RSS 提要中读取图像,然后将其存储到 iPhone 应用程序中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6100414/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com