Objective-c 字符串 数组 转换

这篇博客介绍了如何在Objective-C中通过发送GET请求获取XML数据,然后使用GDataXMLDocument解析XML并将其内容存储到数组中。具体步骤包括创建NSURL请求,获取数据,将数据转换为字符串,解析XML,以及遍历元素填充数组。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

//头文件定义数组
@interface tableViewShowData : UITableViewController {
	NSMutableArray *resultArray;
}
//实现类
//装载数据
-(void) loadData{
	
	
	NSURL *url = [NSURL URLWithString:@"http://192.168.1.112/tsalog/xmls.aspx"];
	
	NSMutableURLRequest* request = [NSMutableURLRequest new];    
	
	[request setURL:url]; //请求的URL   
	
	[request setHTTPMethod:@"GET"]; //请求的方式
	
	NSHTTPURLResponse* response;  //响应请求  
	
	NSData* data = [NSURLConnection sendSynchronousRequest:request    
					
										 returningResponse:&response 
					
													 error:nil]; // 响应的数据传给NSData
	
	
	NSString* responseXMLResult = [[NSString alloc] initWithData:data 
								   
														encoding: CFStringConvertEncodingToNSStringEncoding(kCFStringEncodingUTF8)]; // 响应的XML结果存储到string中   
	
	NSError *error;
	
	GDataXMLDocument *doc = [[GDataXMLDocument alloc] initWithXMLString: responseXMLResult
																options:0 error:&error];    // 把xml结果传给GDataxmldocument进行解析
	if (doc == nil) { return; }  // 判断doc是否为空
	
	
	NSLog(@"LOG=%@", [[NSString alloc] initWithData:doc.XMLData encoding:NSUTF8StringEncoding]); //日志输出
	
	
	NSArray *documentElements = [doc.rootElement nodesForXPath:@"//DocumentElement/tbl_Errors" error:nil];  //xml成员放在数组中
	
	resultArray = [NSMutableArray arrayWithObjects:nil];
	
	for (GDataXMLElement *partyMember in documentElements) {
			
		// Pgmname  节目名 显示在tableViewCell
				
		 pgmnames = [partyMember elementsForName:@"pgmname"];
		if (pgmnames.count > 0) { 
			GDataXMLElement *firstPgmname = (GDataXMLElement *)[pgmnames objectAtIndex:0];
			_pgmname = firstPgmname.stringValue;
			} else continue;
		
		NSLog(@"_pgmname=%@",_pgmname);
		
		//[NSString stringWithFormat:_pgmname];
		
		[resultArray addObject:_pgmname];
				
		

	}
	
	[url release];
	
	[doc release];
} 

//初始化方法
-(id)initWithStyle:(UITableViewStyle)style {
	self = [super initWithStyle:style];
	//NSLog(@"initWithStyle .......");
	if (self) {
		[self loadData];
	}
	return self;
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值