Rumah > Soal Jawab > teks badan
Apabila saya menghuraikan JSON, data null dan pendua akan muncul apabila melintasi kandungan kamus ke model dalam langkah terakhir Saya mempunyai masalah ini apabila saya menguji api pelayan rakan saya sendiri menggunakan API berita di Baidu APIStore dan mempunyai masalah yang sama. Tolong beritahu saya apa yang saya salah. Terima kasih.
Berikut ialah kod, menggunakan AFNetworking, terdapat 5 tatasusunan dalam JSON, dan bahagian bawah ialah tangkapan skrin konsol, menggunakan gelung for dan komen keluar untuk masuk, kedua-duanya mempunyai masalah yang sama
[manager POST:@"地址不便透露,抱歉" parameters:parameters progress:nil success:^(NSURLSessionDataTask * _Nonnull task, id _Nullable responseObject) {
NSLog(@"成功");
if ([responseObject isKindOfClass:[NSDictionary class]]) {
NSArray *jData = [responseObject objectForKey:@"array"];
//NSLog(@"%@",jData);
for (NSDictionary * dict in jData)
{
NSArray * keys=[dict allKeys];
JKey * jKey=[[JKey alloc]init];
/*
for (NSString * str in keys) {
//对对象的属性一一赋值 KVC
[jKey setValue:[dict objectForKey:str] forKey:str];
if ([dict objectForKey:str] > 0) {
[self.testArray addObject:jKey];
}
}
*/
for (NSInteger i=0; i<keys.count; i++) {
[jKey setValue:[dict objectForKey:keys[i]] forKey:keys[i]];
NSLog(@"jKey=%@",jKey.coverpath);
}
}
}
曾经蜡笔没有小新2017-05-02 09:36:28
Saya mencuba sendiri dan tiada masalah untuk memberikan nilai satu demi satu
for (NSDictionary * dict in jData)
{
JKey * jKey=[[JKey alloc]init];
jKey.title = [dict valueForKey:@"title"];
jKey.link = [dict valueForKey:@"link"];
jKey.Id = [dict valueForKey:@"id"];
jKey.coverpath = [dict valueForKey:@"coverpath"];
[self.testArray addObject:jKey];
}
黄舟2017-05-02 09:36:28
Cuba gunakan MJExtension
untuk (NSInteger i = 0; i<array1.count; i++) {
NormalModel * model = [NormalModel objectWithKeyValues:array1[i]];
[self.dataArray addObject:model];
}