Iphone 从XML格式中拆分字符串

Iphone 从XML格式中拆分字符串,iphone,Iphone,我使用evernote api将便笺共享给evernote,它成功地将便笺上载到evernote。但是,当我将便笺从evernote下载到我的应用程序时,它将以xml格式向我发送便笺。我发送便笺的代码为。 在我的按钮点击 { 它正确地向下滑动,但它显示的音符如下 <?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE en-note SYSTEM \"http://xml.evernote.com/pub/enml2.dtd\

我使用evernote api将便笺共享给evernote,它成功地将便笺上载到evernote。但是,当我将便笺从evernote下载到我的应用程序时,它将以xml格式向我发送便笺。我发送便笺的代码为。 在我的按钮点击 {

它正确地向下滑动,但它显示的音符如下

<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE en-note SYSTEM \"http://xml.evernote.com/pub/enml2.dtd\">\n<en-note> then our noteeeee in this areaaa>

但是我只想在文本视图中看到这一点。如何过滤这一点?

您可以实现NSXMLParserDelegate和解析de xml。您可以在like或

周围找到许多示例。苹果在iphone上有两个用于解析xml数据的内置解决方案。xml解析器的objective-c实现称为NSXMLParser和基于C的XML解析器实现,称为libXML2

编辑:

本文向您展示了如何使用NSXMLParser解析XML


一种方法是使用NSXMLParser。如果您只关心这一行,那么编写解析器委托就很容易了。您只需要:

变量使用NSMutableString保存文本,可能称为noteText

a-parser:didStartElement:namespaceURI:qualifiedName:attributes:method在获取标记时清除noteText

a-parser:foundCharacters:将找到的字符添加到noteText的方法

a-parser:didEndElement:namespaceURI:qualifiedName:方法在获取标记时对noteText执行某些操作


尝试解析xml并获取节点值,是的,您是正确的,但我的问题是我通过字符串[note content]和[textview.text set content:[note content]]获取xml内容@Fraser.我如何解析字符串。你能给我一些指导吗?为什么你问了两次同样的问题?我没有从我的prv问题中得到正确的答案。thtswhy.我知道如何使用xml,但问题是我从一个名为[注释内容]的strng中得到了xml;它用hello world保存此ml内容。我输入了一个解析代码,但什么也没有发生,请查看我的编辑我的问题是我通过字符串[note content]和[textview.text set content:[note content]]获取xml内容;@stackiphone如果这是一个问题,为什么要这样做?不管你得到了XML,你仍然可以用NSXMLParser或libXML2解析它。我放了一个用于解析的aboe代码,但什么都没有发生,请参阅我的编辑
- (void)viewDidLoad
{
    [super viewDidLoad];

    // Load the EDAMNote object that has guid we have stored in the object
    EDAMNote * note = [(Evernote *)[Evernote sharedInstance] getNote:guid];
// Changing the navigation title & the content block
    noteNavigation.topItem.title = [note title];
    //adding note to textview 
    noteContent.text = [note content];

    // Adding a back button to close the windows
    UIBarButtonItem* doneButton = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemDone target:self action:@selector(goBack:)];

    UINavigationItem *item = [[[UINavigationItem alloc] init] autorelease];
    item.leftBarButtonItem = doneButton;
    item.hidesBackButton = YES;
    [noteNavigation pushNavigationItem:item animated:NO];
    noteNavigation.topItem.title = [note title];


}
<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE en-note SYSTEM \"http://xml.evernote.com/pub/enml2.dtd\">\n<en-note> then our noteeeee in this areaaa>