2011-04-14 48 views
0

在一些身体帮我,我用一个XMLFILE像添加更多的项目到XML文件中使用iphone

<?xml version="1.0" encoding="UTF-8"?> 
<MangoUserDataFile> 
    <Device>iPad</Device> 
    <Version>3.0</Version> 
     <UserName>XYZ</UserName> 
     <UserType>Admin</UserType> 
     <Module>TabView</Module>  
     <tab id="1"> 
     <item> 
        <name>Admin</name> 
        <value>WebView</value> 
        <image>20</image> 
       </item> 
     </tab> 
</MangoUserDataFile> 

我想从iPad的

对于〔实施例在此XMLFILE添加更多的项目,我创建一些文本框称为:

nametextfiledvaluetextfielsimagetextfield

......有一次我在这些文本框输入值并点击提交当时在这些XML文件中应创建另一个项目

有些机构可以给我任何想法,我们如何在iPad中添加另一个项目在xmlfile中。

回答

0

在这种情况下,您应该将所有元素重新写入一个新的XML文件,并尝试用新文件替换旧的XML文件。

写作可以使用这些类来完成:

// 
// XMLBuilder.h 
// TaxiSharing 
// 
// Created by Erle on 02.07.09. 
// Copyright 2009 University of Duisburg-Essen, 
// Institute of Computer Science and Business Computer Science 
// Group for Pervasive Computing and User Interface Engineering 
// All rights reserved. 
// 

#import <Foundation/Foundation.h> 


@interface XMLBuilder : NSObject { 
    NSMutableString *XMLString; 

} 

@property(nonatomic,retain) NSMutableString *XMLString; 

-(void)addTagToXML:(NSString *)tag withValue:(NSString *)value; 
-(void)addSelfClosedTag:(NSString *)tag withInnerValueTitle:(NSString *)innerValueTitle andValue:(NSString *)value; 
-(void)addSelfClosedTag:(NSString *)tag withInnerString:(NSString *)innerString; 
-(void)addSingleTag:(NSString *)tag withInnerString:(NSString *)innerString; 
-(void)addSingleValue:(NSString *)value; 
-(void)addSingleTag:(NSString *)tag; 
-(void)endSingleTag:(NSString *)tag; 
-(void)closeXML; 

@end 

// 
// XMLBuilder.m 
// TaxiSharing 
// 
// Created by Erle on 02.07.09. 
// Copyright 2009 University of Duisburg-Essen, 
// Institute of Computer Science and Business Computer Science 
// Group for Pervasive Computing and User Interface Engineering 
// All rights reserved. 
// 

#import "XMLBuilder.h" 


@implementation XMLBuilder 

@synthesize XMLString; 

-(id)init{ 
    [super init]; 
    XMLString = [[NSMutableString alloc] initWithFormat:@"<?xml version=\"1.0\" encoding=\"UTF-8\"?> \n"]; 
    return self; 
} 

-(void)addTagToXML:(NSString *)tag withValue:(NSString *)value{ 
    [XMLString appendFormat:@"<%@>%@</%@> \n",tag,value,tag]; 
} 

-(void)addSelfClosedTag:(NSString *)tag withInnerValueTitle:(NSString *)innerValueTitle andValue:(NSString *)value{ 
    [XMLString appendFormat:@"<%@ %@=%@ /> \n",tag,innerValueTitle,value]; 
} 

-(void)addSelfClosedTag:(NSString *)tag withInnerString:(NSString *)innerString{ 
    [XMLString appendFormat:@"<%@ %@ /> \n",tag,innerString]; 
} 

-(void)addSingleTag:(NSString *)tag withInnerString:(NSString *)innerString{ 
    [XMLString appendFormat:@"<%@ %@ > \n",tag,innerString]; 
} 
-(void)addSingleValue:(NSString *)value{ 
    [XMLString appendFormat:@"%@ \n",value]; 
} 

-(void)addSingleTag:(NSString *)tag{ 
    [XMLString appendFormat:@"<%@> \n",tag]; 
} 

-(void)endSingleTag:(NSString *)tag{ 
    [XMLString appendFormat:@"</%@> \n",tag]; 
} 

-(void)closeXML{ 
    [XMLString appendFormat:@"\n"]; 
} 

-(void)dealloc{ 
    [super dealloc]; 
    [XMLString release]; 
} 
@end 

我发现这个代码上http://www.iphonedevsdk.com/forum/tutorial-requests/34645-how-create-xml-file-dynamically.html

+0

基本上我的要求是每当我们输入文本框中的名称,值,图像,并点击提交当时其添加到xmlfile,如果你有任何代码相关的所有请发送给我,以便我可以使用这个one.OR请告诉我如何将旧的xml文件更新为新的xml文件。我的要求是在xmlfile中添加项目,当我点击提交按钮,然后我在nametextfield中输入的值将更新名称,valuetextfield将更新为值和图像文本字段将更新为请给我任何想法如何做。谢谢 – 2011-04-15 05:42:52