Object-C 基础之10 — 使用xml进行归档

来源:互联网 发布:淘宝手机端主图大小 编辑:程序博客网 时间:2024/05/22 01:34





     在object c中,归档是指用某种格式来保持一个或者多个对象,以便后续可以还原这些对象的过程。

     如果你使用的对象是NSString, NSData,NSDictionary,NSArray,NSNumber对象, 则可以使用writeTofile方法,将数据写入到文件中。

 

     今天介绍下通过NSDictionary使用xml进行归档的方法。示例代码如下:

 

     写文件:

 

  

view plain
  1. NSDictionary *glossary=[NSDictionary dictionaryWithObjectsAndKeys:  
  2.                          @"object0",@"key0",  
  3.                          @"object1",@"key1",  
  4.                          @"object2",@"key2",  
  5.                       
  6.                         nil];  
  7.   
  8.   
  9. if ([glossary writeToFile:@"glossary" atomically:YES]==NO) {  
  10.     NSLog(@"write to file failed");  
  11. }  
 

 

 运行后,会生成glossary文件,打开内容如下:

 

 <?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">

<plist version="1.0">

<dict>

<key>key0</key>

<string>object0</string>

<key>key1</key>

<string>object1</string>

<key>key2</key>

<string>object2</string>

</dict>

</plist>

需要说明的是,字典中的key必须全部是NSString类型。
下面读文件的过程如下:
view plain
  1. NSDictionary *glossary=NULL;  
  2.   
  3. glossary=[NSDictionary dictionaryWithContentsOfFile:@"glossary"];  
  4.   
  5. NSLog(@"%@",glossary);  
 
运行结果如下:

2011-03-23 23:19:34.965 MemoryTest[650:a0f] {

    key0 = object0;

    key1 = object1;

    key2 = object2;

}

 

 

可见使用归档,进行数据存储还是很方便的哦。