将HTML文本转换为普通文本会在Objective-C中添加额外的Carraige返回

将HTML文本转换为普通文本会在Objective-C中添加额外的Carraige返回,html,objective-c,cocoa,nsstring,Html,Objective C,Cocoa,Nsstring,我有一个方法可以用来将HTML文本转换为普通文本。 问题是,当我传递一个HTMl文本时,它会向普通文本添加一个额外的回车符 下面是导致问题的方法和示例文本 有人能告诉我我缺少了什么或需要为此做些什么吗? 谢谢你的帮助 - (NSString *)flattenHTML { NSString *finalString = self; if ([self isEqualToString:kSNREmptyString] == NO) { NSAttributedSt

我有一个方法可以用来将HTML文本转换为普通文本。
问题是,当我传递一个HTMl文本时,它会向普通文本添加一个额外的回车符

下面是导致问题的方法和示例文本

有人能告诉我我缺少了什么或需要为此做些什么吗?
谢谢你的帮助

- (NSString *)flattenHTML {
    NSString *finalString = self;

    if ([self isEqualToString:kSNREmptyString] == NO) {
        NSAttributedString *attributeString = nil;
        NSData *data = [self dataUsingEncoding:NSUnicodeStringEncoding];

        if (nil != data) {
            NSDictionary *encodingDict = [NSDictionary dictionaryWithObject:@(NSUnicodeStringEncoding)
                                                                     forKey:@"CharacterEncoding"];
            attributeString = [[NSAttributedString alloc] initWithHTML:data
                                                    documentAttributes:&encodingDict];
            finalString = [attributeString string];
        }
    }

    return finalString;
}
示例文本:

Lorem ipsum dolor sit amet,圣职精英,sed do 临时性的劳动和生产许可证。例外 圣奥卡塔不可轻率行事,必须承担责任 这是我的劳动

Lorem ipsum dolor sit amet,圣职精英,sed do 临时性的劳动和生产许可证。例外 圣奥卡塔不可轻率行事,必须承担责任 这是我的劳动

Lorem ipsum dolor sit amet,圣职精英,sed do 临时性的劳动和生产许可证。例外 圣奥卡塔不可轻率行事,必须承担责任 这是我的劳动

Lorem ipsum dolor sit amet,圣职精英,sed do 临时性的劳动和生产许可证。例外 圣奥卡塔不可轻率行事,必须承担责任 这是我的劳动

Lorem ipsum dolor sit amet,圣职精英,sed do 临时性的劳动和生产许可证。例外 圣奥卡塔不可轻率行事,必须承担责任 这是我的劳动

Lorem ipsum dolor sit amet,圣职精英,sed do 临时性的劳动和生产许可证。例外 圣奥卡塔不可轻率行事,必须承担责任 这是我的劳动

Lorem ipsum dolor sit amet,圣职精英,sed do 临时性的劳动和生产许可证。例外 圣奥卡塔不可轻率行事,必须承担责任 这是我的劳动


也许,这段代码对你有帮助,它在这里工作得很好。请检查下面的代码

 - (void)viewDidLoad 
   {
      [super viewDidLoad];
      [self HtmltoText]
   }

-(void)HtmltoText
{
  NSString *Html_Str =[NSString stringWithFormat:@"<html><head>
                         <title>My First HTML</title></head><body>
                   <p>The HTML head element contains meta data.</p> 
                   <p>Meta data is data about the HTML document. <br/> 
                   Break Next line.</p></body> </html>"];

NSAttributedString *attributedString = [[NSAttributedString alloc]
                                        initWithData: [Html_Str 
                         dataUsingEncoding:NSUnicodeStringEncoding]
                                        options: @{ 
                           NSDocumentTypeDocumentAttribute: 
                         NSHTMLTextDocumentType }
                                        documentAttributes: nil
                                        error: nil
                                        ];


NSLog(@"Html To Normal %@ ",attributedString );


  }
-(void)viewDidLoad
{
[超级视图下载];
[自选文本]
}
-(无效)文本
{
NSString*Html_Str=[NSString stringWithFormat:@”
我的第一个HTML
HTML head元素包含元数据。

元数据是关于HTML文档的数据。
打断下一行。

“]; NSAttributedString*attributedString=[[NSAttributedString alloc] initWithData:[Html\u Str dataUsingEncoding:NSU编码] 选项:@{ NSDocumentTypeDocumentAttribute: NSHTMLTextDocumentType} 文件属性:无 错误:无 ]; NSLog(@“Html到正常%@”,AttributeString); }
也许,这段代码对你有帮助,在这里工作正常。请检查下面的代码

 - (void)viewDidLoad 
   {
      [super viewDidLoad];
      [self HtmltoText]
   }

-(void)HtmltoText
{
  NSString *Html_Str =[NSString stringWithFormat:@"<html><head>
                         <title>My First HTML</title></head><body>
                   <p>The HTML head element contains meta data.</p> 
                   <p>Meta data is data about the HTML document. <br/> 
                   Break Next line.</p></body> </html>"];

NSAttributedString *attributedString = [[NSAttributedString alloc]
                                        initWithData: [Html_Str 
                         dataUsingEncoding:NSUnicodeStringEncoding]
                                        options: @{ 
                           NSDocumentTypeDocumentAttribute: 
                         NSHTMLTextDocumentType }
                                        documentAttributes: nil
                                        error: nil
                                        ];


NSLog(@"Html To Normal %@ ",attributedString );


  }
-(void)viewDidLoad
{
[超级视图下载];
[自选文本]
}
-(无效)文本
{
NSString*Html_Str=[NSString stringWithFormat:@”
我的第一个HTML
HTML head元素包含元数据。

元数据是关于HTML文档的数据。
打断下一行。

“]; NSAttributedString*attributedString=[[NSAttributedString alloc] initWithData:[Html\u Str dataUsingEncoding:NSU编码] 选项:@{ NSDocumentTypeDocumentAttribute: NSHTMLTextDocumentType} 文件属性:无 错误:无 ]; NSLog(@“Html到正常%@”,AttributeString); }
您的初始HTML字符串是什么?我怀疑某个段落

或类似的东西添加了
\n
。指定的是实际的HTML字符串。在此之前没有任何内容。您的初始HTML字符串是什么?我怀疑某个段落

或类似的东西添加了
\n
。指定的是实际的HTML字符串。在那之前什么都没有。