iOS开发--保存数据到本地
//参数介绍:
// (NSMutableArray *)data :保存的数据,暂时先存储地物名称
// (NSString *)fileName :存储的文件名
+(BOOL) saveFavoriteData:(NSMutableArray *) arrFavor saveFileName:(NSString *)fileName
{
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
//NSArray *FeatureAttribute2Plist = [[NSArray alloc]initWithObjects:@"name",@"poiID",@"type",@"objectID",@"icon", nil];
if (!documentsDirectory) {
NSLog(@ "Documents directory not found!" );
return NO;
}
NSString *appFile = [documentsDirectory stringByAppendingPathComponent:fileName];
NSMutableArray *resultArr=[[NSMutableArray alloc]init];
if (arrFavor!=nil&&![arrFavor isKindOfClass:[NSNull class]]) {
if (arrFavor.count>0) {
if( [arrFavor[arrFavor.count-1] isKindOfClass:[FeatureAttribute2 class]]){
for (FeatureAttribute2*feature in arrFavor) {
if(feature.poiID==nil){
feature.poiID=@"nil";
}
if(feature.objectID==nil){
feature.objectID=@"nil";
}
if(feature.name==nil){
feature.name=@"未知";
}
if(feature.x==nil){
feature.x=@"nil";
}
if(feature.y==nil){
feature.y=@"nil";
}
[resultArr addObject:feature.name];
[resultArr addObject:feature.poiID];
[resultArr addObject:feature.type];
[resultArr addObject:feature.objectID];
[resultArr addObject:feature.x];
[resultArr addObject:feature.y];
//[resultArr addObject:feature."%@",s];
}
}
}
}
if (resultArr.count>0) {
return ([resultArr writeToFile:appFile atomically:YES]);
}
else{
return NO;
}
}
//读取游戏数据
//参数介绍:
// (NSString *)fileName :需要读取数据的文件名
+(id) loadFavoriteData:(NSString *)fileName
{
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *appFile = [documentsDirectory stringByAppendingPathComponent:fileName];
NSMutableArray *myData = [[NSMutableArray alloc] initWithContentsOfFile:appFile];
NSMutableArray *myData2 = [NSMutableArray new];
for(int m=0;m<myData.count;m=m+6)
{
NSString *fName = myData[m];
NSString *fPoiID=myData[m+1];
NSString *fType=myData[m+2];
NSString *fObjectID=myData[m+3];
NSString *fX=myData[m+4];
NSString *fY=myData[m+5];
FeatureAttribute2*feature=[FeatureAttribute2 new];
feature.name=fName;
feature.poiID=fPoiID;
feature.type=fType;
feature.objectID=fObjectID;
feature.x=fX;
feature.y=fY;
[myData2 addObject:feature];
}
return myData2;
}
// (NSMutableArray *)data :保存的数据,暂时先存储地物名称
// (NSString *)fileName :存储的文件名
+(BOOL) saveFavoriteData:(NSMutableArray *) arrFavor saveFileName:(NSString *)fileName
{
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
//NSArray *FeatureAttribute2Plist = [[NSArray alloc]initWithObjects:@"name",@"poiID",@"type",@"objectID",@"icon", nil];
if (!documentsDirectory) {
NSLog(@ "Documents directory not found!" );
return NO;
}
NSString *appFile = [documentsDirectory stringByAppendingPathComponent:fileName];
NSMutableArray *resultArr=[[NSMutableArray alloc]init];
if (arrFavor!=nil&&![arrFavor isKindOfClass:[NSNull class]]) {
if (arrFavor.count>0) {
if( [arrFavor[arrFavor.count-1] isKindOfClass:[FeatureAttribute2 class]]){
for (FeatureAttribute2*feature in arrFavor) {
if(feature.poiID==nil){
feature.poiID=@"nil";
}
if(feature.objectID==nil){
feature.objectID=@"nil";
}
if(feature.name==nil){
feature.name=@"未知";
}
if(feature.x==nil){
feature.x=@"nil";
}
if(feature.y==nil){
feature.y=@"nil";
}
[resultArr addObject:feature.name];
[resultArr addObject:feature.poiID];
[resultArr addObject:feature.type];
[resultArr addObject:feature.objectID];
[resultArr addObject:feature.x];
[resultArr addObject:feature.y];
//[resultArr addObject:feature."%@",s];
}
}
}
}
if (resultArr.count>0) {
return ([resultArr writeToFile:appFile atomically:YES]);
}
else{
return NO;
}
}
//读取游戏数据
//参数介绍:
// (NSString *)fileName :需要读取数据的文件名
+(id) loadFavoriteData:(NSString *)fileName
{
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *appFile = [documentsDirectory stringByAppendingPathComponent:fileName];
NSMutableArray *myData = [[NSMutableArray alloc] initWithContentsOfFile:appFile];
NSMutableArray *myData2 = [NSMutableArray new];
for(int m=0;m<myData.count;m=m+6)
{
NSString *fName = myData[m];
NSString *fPoiID=myData[m+1];
NSString *fType=myData[m+2];
NSString *fObjectID=myData[m+3];
NSString *fX=myData[m+4];
NSString *fY=myData[m+5];
FeatureAttribute2*feature=[FeatureAttribute2 new];
feature.name=fName;
feature.poiID=fPoiID;
feature.type=fType;
feature.objectID=fObjectID;
feature.x=fX;
feature.y=fY;
[myData2 addObject:feature];
}
return myData2;
}