提前致谢! 我想知道是否可以将存储在NSString中的HTML代码转换为NSData以便稍后解析。 我正在从BBDD读取HTML代码并将其保存到NSString中。
NSString *htmlString =@"<html><body><p>introduccion</p><p>introducción</p></body></html>";
我想用:
NSData * nsData = [[NSData alloc] initWithContentsOfURL:url];
但是我不得不使用htmlString而不是initWithContentsOfURL,因为我将代码存储在BBDD中并且我正在访问它并将代码存储到NSString
谢谢!
答案 0 :(得分:2)
为什么不使用标准方法将NSString转换为NSData,如下所示:
NSData* data = [htmlString dataUsingEncoding:NSUTF8StringEncoding];
答案 1 :(得分:0)
我的&#34; subject.details&#34;中有一些html格式的文本,我在正面和背面添加了一些更多的html格式。给我一个&#34; detailsStringForDisplay&#34;的NSString。
我将此字符串转换为NSData。 设置一个字典,它只包含一个元素,表明文档类型是HTML。
然后最后使用数据和字典设置一个attributionText。
NSString *fontDetailsHTML = @"<div style=\"font-size:17px; text-family:Georgia; \">";
NSString *detailsString = subject.details;
NSString *endFontDetailsHTML = @"</div>";
NSString *detailsStringForDisplay = [NSString stringWithFormat:@"%@%@%@",fontDetailsHTML,detailsString,endFontDetailsHTML];
NSData *labelTextData = [detailsStringForDisplay dataUsingEncoding:NSUnicodeStringEncoding allowLossyConversion:true];
NSDictionary *attributesForText = [[NSDictionary alloc]initWithObjectsAndKeys:NSHTMLTextDocumentType,NSDocumentTypeDocumentAttribute , nil];
self.detailDescriptionLabel.attributedText = [[NSAttributedString alloc]initWithData:labelTextData options:attributesForText documentAttributes:nil error:nil];