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

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;
}

(0)

相关推荐

  • Objective-C中使用NSString类操作字符串的方法小结

    一.字符串切割 1.带节点的字符串,如@"<p>讨厌的节点<br/></p>"我们只想要中间的中文 处理方法: 复制代码 代码如下: NSString *string1 = @"<p>讨厌的节点<br/></p>";   /*此处将不想要的字符全部放进characterSet1中,不需另外加逗号或空格之类的,除非字符串中有你想要去除的空格,此处< p /等都是单独存在,不作为整个字符*/

  • Objective-C中字符串NSString的常用操作方法总结

    1.创建字符串 (1)常量字符串 复制代码 代码如下: NSString *string = @"i am an iOSDevTip!"; (2)常用创建方法 复制代码 代码如下: NSString *string = [[NSString alloc] init]; string = @"i am an iOSDevTip too!"; (3)用initWithString创建字符串 复制代码 代码如下: NSString *string = [[NSString

  • IOS开发之路--C语言数组和字符串

    概览 数组在C语言中有着特殊的地位,它有很多特性,例如它的存储是连续的,数组的名称就是数组的地址等.而在C语言中是没有String类型的,那么如果要表示一个字符串,就必须使用字符串数组.今天主要就介绍如下三个方面: 一维数组 多维数组 字符串 一维数组 一维数组操作比较简单,但是需要注意,数组长度必须是固定的,长度不能使用变量进行初始化:如果声明的同时进行赋值则数组长度可以省略,编译器会自动计算数组长度:同时数组不能先声明再一次性赋值(当然可以对每个元素一一赋值). #include <stdi

  • NSString与C字符串之间的相互转换

    代码: [cpp] const char *cString = "这是一个C字符串, c string"; NSString *nsstring = @"这是个NSString字符串, nsstring"; NSLog(@"cString字符串-->%s ",cString); NSLog(@"NSString字符串-->%@",nsstring); const char *cString2 = [nsstring

  • Objective-C中字符串的拼接方法小结

    在 java 和 c# 中,字符串的拼接是直接用 + 来操作的.在 OC 中,说是有下面3种方法, NSString* string; // 结果字符串 NSString* string1, string2; //已存在的字符串,需要将string1和string2连接起来   方法1: 复制代码 代码如下: string = [NSString initWithFormat:@"%@,%@", string1, string2 ]; 方法2: 复制代码 代码如下: string =

  • Objective-C处理空字符串和页面传值及自定义拷贝

    空字符串 在ios应用中,如果从网络请求数据,返回json或者是xml格式的数据时,经常会遇到空串,一般接口是用java等语言写的,如果是安卓,因为源语言都是java,只需判断是否等于null即可,但是在ios中会出现各种各项的形式,比如null,(null),<null>. 如果单纯用 复制代码 代码如下: string!=nil; 无法判断出尖括号的空串 完整判断方法 复制代码 代码如下: -(BOOL)isNull:(id)object {     // 判断是否为空串     if (

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

    Objective-C简单封装 字符串的存储操作,省去中间沙盒处理方式 复制代码 代码如下: /存储publickey和sessionID -- writeContent: nil - 仅取出数据, 其他 - 修改原内容并提取+(NSString *)storeFile:(NSString *)fileName content:(NSString *)writeContent{    NSString *pathDocuments=[NSSearchPathForDirectoriesInDom

  • Vuex处理用户Token过期及优化设置封装本地存储操作模块

    目录 1. 处理用户 Token 2. 优化封装本地存储操作模块 - 封装localStrage功能 3. Vuex各属性的使用 4. 关于 Token 过期问题 5.优化设置 Token 1. 处理用户 Token Token 是用户登录成功之后服务端返回的一个身份令牌,在项目中的多个业务中需要使用到: 访问需要授权的 API 接口 校验页面的访问权限 ... 问题:Token往哪儿存? 我们只有在第一次用户登录成功之后才能拿到 Token.所以为了能在其它模块中获取到 Token 数据,我们

  • python实现修改固定模式的字符串内容操作示例

    本文实例讲述了python实现修改固定模式的字符串内容操作.分享给大家供大家参考,具体如下: 说明 字符串模式是开头可能有空格,之后可能存在多个小数点,然后后面跟着一个数字,数字可能是小数,数字后可能存在空格. 任务要求删去开头的小数点,如下: " -78 " 修改为" 78 " " -7.889 " 修改为" 7.889 " ".9.8"修改为"9.8" 代码示例 注意这里正则的模式和

  • JS字符串统计操作示例【遍历,截取,输出,计算】

    本文实例讲述了JS字符串统计操作.分享给大家供大家参考,具体如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html> <head> <title>JS字符串</title> <meta http-equiv="

  • JS正则表达式封装与使用操作示例

    本文实例讲述了JS正则表达式封装与使用操作.分享给大家供大家参考,具体如下: 对一些简单的输入进行正则判断的整理,待优化 <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8"> <title>正则表达式封装</title> </head> <body> <script> //邮箱 var e

  • Java实现的简单字符串反转操作示例

    本文实例讲述了Java实现的简单字符串反转操作.分享给大家供大家参考,具体如下: 最常用的方式是,反向取出每个字符,然后打印: public class StringReverse { public static void main(String[] args) { // 原始字符串 String s = "A quick brown fox jumps over the lazy dog."; System.out.println("原始的字符串:" + s);

  • Vue使用zTree插件封装树组件操作示例

    本文实例讲述了Vue使用zTree插件封装树组件操作.分享给大家供大家参考,具体如下: 1.通过npm安装jquery npm install jquery --save-dev 2.在build/webpack.base.conf文件当中引入jquery module.exports = { ... resolve: { extensions: ['.js', '.vue', '.json'], alias: { 'vue$': 'vue/dist/vue.esm.js', '@': reso

  • Python中的字符串替换操作示例

    字符串的替换(interpolation), 可以使用string.Template, 也可以使用标准字符串的拼接. string.Template标示替换的字符, 使用"$"符号, 或 在字符串内, 使用"${}"; 调用时使用string.substitute(dict)函数. 标准字符串拼接, 使用"%()s"的符号, 调用时, 使用string%dict方法. 两者都可以进行字符的替换. 代码: # -*- coding: utf-8 -

  • PHP模型Model类封装数据库操作示例

    本文实例讲述了PHP模型Model类封装数据库操作.分享给大家供大家参考,具体如下: <?php //引入配置文件 include "./config.php"; class Model { public $link;//存储连接对象 public $tableName = "";//存储表名 public $field = "*";//存储字段 public $allFields = [];//存储当前表所有字段 public $wher

  • python 使用paramiko模块进行封装,远程操作linux主机的示例代码

    import time import paramiko class HandleParamiko: ''' 定义一个linux处理类 ''' def __init__(self, hostname, password, port=22, username='root'): ''' 构造器 :param hostname: 主机ip,type:str :param password: 密码,type:str :param port: 端口,type:int 默认22 :param username

随机推荐