Objective-C封装字符串存储操作示例

时间:2021-05-20

Objective-C简单封装 字符串的存储操作,省去中间沙盒处理方式

复制代码 代码如下:
/存储publickey和sessionID -- writeContent: nil - 仅取出数据, 其他 - 修改原内容并提取
+(NSString *)storeFile:(NSString *)fileName content:(NSString *)writeContent
{
NSString *pathDocuments=[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0];

NSString *createPath=[NSString stringWithFormat:@"%@/%@",pathDocuments,fileName];//用文件名补全路径
NSError *ReadFileError;
NSString *readContent ;
NSData *data ;
if ([[NSFileManager defaultManager] fileExistsAtPath:createPath])//判断文件是否已存在
{
if (nil == writeContent) {
readContent = [NSString stringWithContentsOfFile:createPath encoding:NSUTF8StringEncoding error:&ReadFileError;];
}else{
data = [writeContent dataUsingEncoding:NSUTF8StringEncoding];//新文件的初始数据
[[NSFileManager defaultManager] createFileAtPath:createPath contents:data attributes:nil];//创建文件
readContent = [NSString stringWithContentsOfFile:createPath encoding:NSUTF8StringEncoding error:&ReadFileError;];
}
}
else
{
if (nil == writeContent) {
return nil;
}else{
data = [writeContent dataUsingEncoding:NSUTF8StringEncoding];//新文件的初始数据
[[NSFileManager defaultManager] createFileAtPath:createPath contents:data attributes:nil];//创建文件
readContent = [NSString stringWithContentsOfFile:createPath encoding:NSUTF8StringEncoding error:&ReadFileError;];
}
}
return readContent;
}

+ ( NSArray * )storeArryFile:(NSString *)fileName content:( NSArray *)writeArry
{
//步骤
//存 :将 数组放入 字典
//取: 从字典取出数组
if ( writeArry == nil)//读取文件
{
NSString *storeStr = [FNProRequest storeFile:fileName content:nil];
NSDictionary *dic = (NSDictionary *)[storeStr JSONValue];

NSLog(@"%@", dic);

return (NSArray *)[dic objectForKey:fileName];
}
else
{
NSArray *objectsArry = [[NSArray alloc]initWithObjects:writeArry,nil ];
NSArray *keysArry = [[NSArray alloc]initWithObjects:fileName,nil ];
NSDictionary *dic = [[NSDictionary alloc]initWithObjects:objectsArry forKeys:keysArry];
NSString *storeStr = [dic JSONRepresentation];
[self storeFile:fileName content:storeStr];
[objectsArry release];
[keysArry release];
[dic release];
}
return nil;
}

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章