我有一种情况,即从应用程序中的CSV文件读取的数据必须转换为整数,必须稍后绘制。目前,它无法识别数据何时保存为
int i=[[rows objectAtIndex:0] componentsSeparatedByString:@","];
这是已实施的代码。
-(void)connection :(NSURLConnection *) connection didReceiveData:(NSData *)data{
[self serverConnect];
response = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];
//NSLog(response);
NSString *stripped1 = [response stringByReplacingOccurrencesOfString:@"\r" withString:@""];
NSArray *rows = [stripped1 componentsSeparatedByString:@"\n"];
NSArray *components;
for (int i=0;i<[rows count]; i++) {
if(i == 0 || [[rows objectAtIndex:i] isEqualToString:@""]){
continue;
}
components = [[rows objectAtIndex:i] componentsSeparatedByString:@","];
NSLog(@"data1:%@ data2:%@ data3:%@", [components objectAtIndex:0] ,[components objectAtIndex:1],[components objectAtIndex:2]);
}
data1
,data2
和data3
应该是整数。
非常感谢。
答案 0 :(得分:3)
componentsSeparatedByString返回子串或NSString的实例。
components = [[rows objectAtIndex:i] componentsSeparatedByString:@","];
您只需要获取'components'的每个成员并获得它的intValue,如下所示:
int myInt = [[components objectAtIndex:n] intValue];
答案 1 :(得分:1)
NSArray和NSMutableArray只能包含对象。所以从中获取整数值,使用[object intValue]。如果需要向数组添加整数,请从整数中创建一个NSNumber对象并插入它。我知道Rayfleck回答了你的问题,我只想指出数组如何在iOS中运行。希望这可以帮助。