-(void) writeConfigFile:(NSData *)data fromFile:(NSString*)strFile
{
//Create File Manager
NSFileManager *fileManager = [NSFileManager defaultManager];
//获取路径
//参数NSDocumentDirectory要获取那种路径
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
//去处需要的路径
NSString *documentsDirectory = [paths objectAtIndex:0];
//更改到待操作的目录下
[fileManager changeCurrentDirectoryPath:[documentsDirectory stringByExpandingTildeInPath]];
//移除本文件管理器下的该项
//[fileManager removeItemAtPath:strFile error:nil];
//获取文件路径
NSString *path = [documentsDirectory stringByAppendingPathComponent:strFile];
//判断文件是否存在
if (![[NSFileManager defaultManager] fileExistsAtPath:path])
{
[fileManager createFileAtPath:path contents:data attributes:nil];
}
}
-(NSMutableDictionary*) readConfigFile:(NSString*)file
{
//Create File Manager
NSFileManager *fileManager = [NSFileManager defaultManager];
//获取路径
//参数NSDocumentDirectory要获取那种路径
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];//去处需要的路径
//更改到待操作的目录下
[fileManager changeCurrentDirectoryPath:[documentsDirectory stringByExpandingTildeInPath]];
//获取文件路径
NSString *path = [documentsDirectory stringByAppendingPathComponent:file];
NSMutableDictionary *dict=[[NSMutableDictionary alloc] initWithContentsOfFile:path];
return dict;
}
-(void) SetValueByKey:(NSString *)value modifyByValue:(NSString*)key fromFile:(NSString*)file
{
//Create File Manager
NSFileManager *fileManager = [NSFileManager defaultManager];
//获取路径
//参数NSDocumentDirectory要获取那种路径
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];//去处需要的路径
//更改到待操作的目录下
[fileManager changeCurrentDirectoryPath:[documentsDirectory stringByExpandingTildeInPath]];
//获取文件路径
NSString *path = [documentsDirectory stringByAppendingPathComponent:file];
NSMutableDictionary *dict=[[NSMutableDictionary alloc] initWithContentsOfFile:path];
[dict setObject:value forKey:key];//通过key来修改value
NSData *data=[[NSData alloc] init];
data=dict;
[fileManager removeItemAtPath:@"config" error:nil];
[fileManager createFileAtPath:path contents:data attributes:nil];
[data release];
}
-(NSString*)getValueByKey:(NSString*)key fromFile:(NSString*)file
{
//Create File Manager
NSFileManager *fileManager = [NSFileManager defaultManager];
//获取路径
//参数NSDocumentDirectory要获取那种路径
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];//去处需要的路径
//更改到待操作的目录下
[fileManager changeCurrentDirectoryPath:[documentsDirectory stringByExpandingTildeInPath]];
//获取文件路径
NSString *path = [documentsDirectory stringByAppendingPathComponent:file];
NSMutableDictionary *dict=[[NSMutableDictionary alloc] initWithContentsOfFile:path];
NSString *object=[dict objectForKey:key];
if (object==nil || object.length==0)
{
object=@"0";
}
return object;
}
{
//Create File Manager
NSFileManager *fileManager = [NSFileManager defaultManager];
//获取路径
//参数NSDocumentDirectory要获取那种路径
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
//去处需要的路径
NSString *documentsDirectory = [paths objectAtIndex:0];
//更改到待操作的目录下
[fileManager changeCurrentDirectoryPath:[documentsDirectory stringByExpandingTildeInPath]];
//移除本文件管理器下的该项
//[fileManager removeItemAtPath:strFile error:nil];
//获取文件路径
NSString *path = [documentsDirectory stringByAppendingPathComponent:strFile];
//判断文件是否存在
if (![[NSFileManager defaultManager] fileExistsAtPath:path])
{
[fileManager createFileAtPath:path contents:data attributes:nil];
}
}
-(NSMutableDictionary*) readConfigFile:(NSString*)file
{
//Create File Manager
NSFileManager *fileManager = [NSFileManager defaultManager];
//获取路径
//参数NSDocumentDirectory要获取那种路径
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];//去处需要的路径
//更改到待操作的目录下
[fileManager changeCurrentDirectoryPath:[documentsDirectory stringByExpandingTildeInPath]];
//获取文件路径
NSString *path = [documentsDirectory stringByAppendingPathComponent:file];
NSMutableDictionary *dict=[[NSMutableDictionary alloc] initWithContentsOfFile:path];
return dict;
}
-(void) SetValueByKey:(NSString *)value modifyByValue:(NSString*)key fromFile:(NSString*)file
{
//Create File Manager
NSFileManager *fileManager = [NSFileManager defaultManager];
//获取路径
//参数NSDocumentDirectory要获取那种路径
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];//去处需要的路径
//更改到待操作的目录下
[fileManager changeCurrentDirectoryPath:[documentsDirectory stringByExpandingTildeInPath]];
//获取文件路径
NSString *path = [documentsDirectory stringByAppendingPathComponent:file];
NSMutableDictionary *dict=[[NSMutableDictionary alloc] initWithContentsOfFile:path];
[dict setObject:value forKey:key];//通过key来修改value
NSData *data=[[NSData alloc] init];
data=dict;
[fileManager removeItemAtPath:@"config" error:nil];
[fileManager createFileAtPath:path contents:data attributes:nil];
[data release];
}
-(NSString*)getValueByKey:(NSString*)key fromFile:(NSString*)file
{
//Create File Manager
NSFileManager *fileManager = [NSFileManager defaultManager];
//获取路径
//参数NSDocumentDirectory要获取那种路径
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];//去处需要的路径
//更改到待操作的目录下
[fileManager changeCurrentDirectoryPath:[documentsDirectory stringByExpandingTildeInPath]];
//获取文件路径
NSString *path = [documentsDirectory stringByAppendingPathComponent:file];
NSMutableDictionary *dict=[[NSMutableDictionary alloc] initWithContentsOfFile:path];
NSString *object=[dict objectForKey:key];
if (object==nil || object.length==0)
{
object=@"0";
}
return object;
}
本文介绍了一个使用Objective-C编写的配置文件读写方法。包括创建、读取和更新配置文件的功能,涉及NSFileManager、NSData和NSMutableDictionary等类的使用。
303

被折叠的 条评论
为什么被折叠?



