• 九、Foundation框架中的NSString常用方法


    一、NSString的创建

    方式1创建常量字符串

    NSString *st = @"this is string!"; //这种方式创建的字符串不需要释放

    方式2创建空字符串,给予赋值

    NSString *str =[[NSString alloc] init];

    str = @"this is string!";

    [str release];

    方式3通过字符串创建字符串

    NSString str =[[NSString alloc] initWithString:@"abcdse"];

    //或者[[NSString alloc]  initWithFormat:@"abcdse"];

    [str release];

    对应的静态方法(不需要释放内存)

    NSString str =[NSString  stringWithString:@"abcdse"];

    方式4用标准C创建字符串

    char *str = "dsada";

    NSString str = [[NSString alloc] initWithCString:str encoding:NSUTF8StringEncoding];

    或者[[NSString alloc] initWithUTF8String:str];

    [str release];

    对应的静态方法(不需要释放内存)

    NSString str =[NSString  stringUTF8String:@"abcdse"];

    二、字符串的读取

    从文件中读取字符串文本1

    NSString *path= @"/Users/apple/Desktop/test.txt";

    //指定编码为UTF-8,error表示有错误会赋值给error,需要传一个error的地址

    NSError *error;

    NSString *str1  = [NSString stingWithContentOfFile:path:NSUTF8StringEncoding :error:&error];

    if(errof == nil){//没有错误信息

      NSLog(@"读取文件成功%@",str1);

    }else{

      NSLog(@"读取文件失败%@",error);

    }

    从文件中(远程)读取字符串文本2

    url前面必须是http://, ftp://和file://等

    NSURL *url =[NSURL URLWithString:"@file:///Users/apple/Desktop/test.txt"];

    NSString *str2 = [NSString stingWithContentOfURL:url:NSUTF8StringEncoding :error:nil];

    NSLog(@"%@",str2);

    NSURL *url =[NSURL URLWithString:"@http://www.baidu.com"];

    NSString *str3 = [NSString stingWithContentOfURL:url:NSUTF8StringEncoding :error:nil];

    NSLog(@"%@",str3);

    三、字符串的导出

    NSString *str = @"1235";

    NSError *error;

    //如果文件不存,则在会自动创建

    //如果文件夹不存在,会直接报错

    NSString *path= @"/Users/apple/Desktop/test.txt";

    //atomiclly代表原子性,如果yes,代表创建临时文件,内容写到临时文件中,写完后,传入文件中;如果是no,会直接写到文件中

    [str writToFile:path atomiclly:YES  encodin:NSUTF8StringEncoding erro:&error];

    if(errof ){

    //[error localizedDescription]会返回主要的错误信息

      NSLog(@"读取文件失败:%@" ,[error localizedDescription]);

    }else{

      NSLog(@"读取文件成功");

    }

    四、NSString字符串大小写处理

    - (NSString *)uppercaseString//全部转换为大写字母

    - (NSString *)lowercaseString//全部转换为小写字母

    - (NSString *)capitalizdString//首字母大写,其他字母都变小写

    五、NSString的比较

    - (BOOL)isEqualToString:(NSString *) aString

    比较两个字符串的内容是否相同,相同返回YES,否则NO

    - (NSComparisonResult)compare:(NSString *) aString

    逐个字符地进行比较,返回NSComparisonResult枚举类比较结果

    NSComparisonResult有三个值:

    如果左侧大于右侧,返回NSOrderedDescending,

    如果左侧小于右侧,返回NSOrderedAscending,

    否则返回NSOrderedSame

    - (NSComparisonResult)caseInsensitiveCompare:(NSString *) aString

    忽略大小写进行比较,返回值与compare:一致

    五、NSString中搜索字符串

    - (BOOL)hasPrefix:(NSString *)aString

    是否以aString开头

    - (BOOL)hasSuffix:(NSString *)aString

    是否以aString结尾

    - (NSRange)rangeOfString:(NSString *)aString

    检查是否包含了aString,如果包含,返回位置,不包含,返回{-1,0}

    - (NSRange)rangeOfString:(NSString *)aString options:(NSStringCompareOption)mask

    可以传递一个mask参数,改变搜索方式

    比如NSStringCompareOptions为NSBackwardsSearch表示从尾部开始搜索

    - (NSRange)rangeOfString:(NSString *)aString options:(NSStringCompareOption)mask range:(NSRange)searchRange

    还可以用searcRaneg指定搜索范围

    六、字符串截取

    -(NSString *) substringFormIndex:(NSUInteger)index

    从index位置开始截取,到尾部,包括index

    -(NSString *) substringToIndex:(NSUInteger)index

    从头开始,截取到index之前,不包括index

    -(NSString *) substringWithRange:(NSRange)range

    按照给出的NSRange从字符串中截取字符串

    - (NSArry *)componentsSeparatedByString:(NSString *)separator

    用separator为分隔符截取字符串,返回一个装着子串的NSArray

    七、NSString与路径

    + (NSString *)pathWithComponents:(NSArray *)components

    将components中的字符串按顺去拼成一个路径

    - (NSArray *)pathComponents

    将一个路径分解成一个装着每一个目录的NSArray

    - (BOOL)isAbsolutePath

    是否是绝对路径

    - (NSString *)lastPathComponent

    获得最后一个目录

    - (NSString *)stringByDeletingLastPathComponent

    删除最后一个目录

    - (NSString *)stringByAppendingLastPathComponent:(NSString *)str

    在路径后面拼接一个目录

    八、NSString与拓展名

    - (NSString *)pathExtension

    获得拓展名

    - (NSString *)stringByDeletingLastPathExtension

    删除尾部的拓展名

    - (NSString *)stringByAppendingLastPathExtension:(NSString *)str

    在尾部添加一个拓展名

    九、NSString其他用法

    - (NSUInteger)length

    返回字符串长度(字符个数)

    - (unichar)charactertInd:(NSUIntger)index

    返回index位置对应的字符

    -(double)doubleValue

    -(float)floatValue

    -(int)intValue

    -(char *)UTF8String

    转换C语言中的字符串

  • 相关阅读:
    微信公众平台开发(53)砸金蛋
    微信公众平台高级功能
    微信5.0安卓内测版下载
    微信公众平台2013.08.05更新说明
    淘宝微信互相屏蔽影响了谁
    WAP网页输入框的默认键盘类型控制
    如何通过微信创业赚钱
    腾讯风铃
    腾讯推出微信企业服务平台风铃
    一键生成HTML4和WAP站
  • 原文地址:https://www.cnblogs.com/hqr9313/p/3515561.html
Copyright © 2020-2023  润新知