2012-04-08 17 views
0

Ich entwickle eine App, die Daten aus SharePoint-Liste in ein Array liest. Ich bin gerade dabei, diese Daten auf dem Bildschirm als Textfelder anzuzeigen. Eines der importierten Datenfelder ist jedoch in HTML-Markup-Code, z.B.xcode - Extrahieren von Text aus HTML-Code

<div class="ExternalClass7E8EC81DFF944C7BB81DA896086ABDFF"><p> </p>
<div><span style="font-size:12pt"><font face="Calibri">Project Completion Date (A05-A07) <span>  </span><span>  </span>15<sup>th</sup> May 2012</font></span></div>
​ <p> </p></div>

Wer weiß, wie ich über das Extrahieren des Textinhalt von diesem gehen könnte? Alternativ sollte ich vielleicht die Anzeige dieser Daten als eine Webseite auf dem Bildschirm betrachten? Wenn ja, könnte mir bitte jemand in die richtige Richtung zeigen?

Vielen Dank im Voraus für Ihre Hilfe ...

Antwort

2

Die HTML als entsandte mit „Einheit“ Codes codiert wird. Die erste Aufgabe besteht also darin, diese zu decodieren, um zu echtem HTML zurückzukehren. Sie können CFXMLCreateStringByUnescapingEntities() dafür verwenden.

Sie können ein NSXMLDocument aus dem Ergebnis mit der Option NSXMLDocumentTidyHTML erstellen. Sie können die -stringValue davon anfordern, um den Klartext zu erhalten.

Alternativ können Sie einen NSAttributedString mit -initWithHTML:documentAttributes: erstellen.

+0

Danke Ken. Ich habe mich entschieden, den Bildschirm als Webseitenroute zu verwenden, mit 'loadHTMLString'. Ich habe die zuvor erwähnten Daten durch eine neue Ansicht weitergegeben, aber es wird als HTML angezeigt und nicht als Webseite gerendert. Irgendwelche Hinweise, wie ich es von diesem Punkt aus richtig wiedergeben kann? Vielen Dank. –

+0

OK Ich habe es schließlich sortiert - mit MREntitiesConverter, um HTML zu decodieren, um Entitäten zu entfernen, und dann HTMLString laden, um den reinen HTML-Code auf dem Bildschirm als Webseite darzustellen. –