plist 读取+数组排序

  
  
  
  
  1. 一个简单的例子,主要练习数据的永久存储和数组排序 ,用到了一些东西,贴一部分关键代码出来
  2. 后面给出完整的附件,把1.plist 添加到模拟器的目录去。


//读取文件路径sql

   
   
   
   
  1. -(NSString *)dataFilePath 
  2.     NSArray *paths= NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); 
  3.     //NSLog(@"======path======%@",paths); 
  4.     NSString *documentsDirectory=[paths objectAtIndex:0]; 
  5.     //NSLog(@"%@",documentsDirectory); 
  6.     return[documentsDirectory stringByAppendingPathComponent:@"1.plist"]; 


 数组

 ide

  1. //从plist中读取数据 
  2.     NSString *path =[self dataFilePath]; 
  3.     NSMutableArray *array=[[NSMutableArray  alloc] initWithContentsOfFile:path]; 
  4.     self.recordsArray=array; 
  5.     [array release]; 
  6.  
  7. -(void) addrecords:(id)sender 
  8.     //获取填写内容 
  9.     NSString* titletext=inputTextField.text; 
  10.     //获取当前时间 
  11.     NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; 
  12.     [dateFormatter setDateFormat:@"YY年MM月dd日HH点:mm分:ss秒"]; 
  13.     NSString* result = [dateFormatter stringFromDate:[NSDate date]]; 
  14.     [dateFormatter release]; 
  15.     dateFormatter=nil; 
  16.      
  17.     NSMutableDictionary *newdictionary=[[NSMutableDictionary alloc]init]; 
  18.     [newdictionary setObject:titletext forKey:@"content"]; 
  19.     [newdictionary setObject:result forKey:@"datetime"]; 
  20.      
  21.     /* 在数组的末尾附加*/ 
  22.     [self.recordsArray addObject:newdictionary]; 
  23.      
  24.     /* save */ 
  25.     BOOL success = [self.recordsArray writeToFile:[self dataFilePath] atomically:NO]; 
  26.     NSLog(@"success = %d",success); 
  27.  
  28.     /* reload date */ 
  29.     [self.recordsArray removeAllObjects]; 
  30.      
  31.     NSString *path =[self dataFilePath]; 
  32.     NSLog(@"path = %@",path); 
  33.      
  34.     NSMutableArray *tempMutableArray = [NSMutableArray arrayWithContentsOfFile:path]; 
  35.     [self.recordsArray addObjectsFromArray:tempMutableArray]; 
  36.     NSLog(@"self.recordsArray = %@",self.recordsArray); 
  37.     inputTextField.text=@""
  38.     [recordsTableView reloadData]; 
  39.  
  40.  
  41. -(void) sortByName 
  42.     NSSortDescriptor *sorter = [[NSSortDescriptor alloc] initWithKey:@"content" ascending:YES]; 
  43.     self. recordsArray = [self.recordsArray sortedArrayUsingDescriptors:[NSArray arrayWithObject:sorter]]; 
  44.     [self.recordsArray writeToFile:[self dataFilePath] atomically:NO]; 
  45.      
  46.     NSString *path =[self dataFilePath]; 
  47.     NSMutableArray *array=[[NSMutableArray alloc] initWithContentsOfFile:path]; 
  48.     self.recordsArray=array; 
  49.     [array release]; 
  50.     [recordsTableView reloadData]; 
相关文章
相关标签/搜索
本站公众号
   欢迎关注本站公众号,获取更多信息