簡體   English   中英

從包含HTML的NSString中創建本地NSURL?

[英]Make a local NSURL from an NSString containing HTML?

我有一個包含一些HTML的NSString 我正在嘗試預加載該HTML,包括其中的所有外部圖像鏈接。 因此,請澄清一下:我只有HTML,並且需要基本加載它,獲取其圖像並緩存該數據。

我可以使用以下代碼通過實時網站來做到這一點:

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *filePath = [NSString stringWithFormat:@"%@/%@", [paths objectAtIndex:0], @"index.html"];
NSURL *url = [NSURL URLWithString:@"http://www.google.co.uk"];
NSData *urlData = [NSData dataWithContentsOfURL:url];
[urlData writeToFile:filePath atomically:YES];

但是,如果沒有NSURL這將無法工作。 我想知道是否可以通過此HTML字符串制作NSURL ,並將其替換為URLWithString:方法。

所以,問題是:我可以在NSString內放入一些本地HTML並將其轉換為NSURL ,以便可以將其輸入到上面的代碼中,並保存HTML和它鏈接到的任何圖像嗎?

您所提出的問題完全沒有道理。

URL是指向在線資源位置的指針。 在這種情況下,一個html文件。 您不能將一個變成另一個。

我建議您創建一個UIWebView ,將字符串加載到其中,使其呈現並緩存結果。

[webView loadHTMLString:@"data" baseURL:nil];

我認為它實際上需要放置在屏幕上才能呈現,因此使其成為不可見的1 X 1像素正方形,應該沒問題。 然后在didFinishLoading觸發時。 緩存結果

是的你可以。 您必須自己解析HTML中的鏈接。 現實世界中的HTML不符合XML,因此實現目標的一種快速而骯臟的方法是將HTML視為文本並使用正則表達式庫解析出鏈接。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM