NSString
字符串的创建
字符串的导出-(BOOL)writeToFile:(NSString*)path atomically:(BOOL)useAuxiliaryFile
encoding:(NSStringEncoding)enc error:(NSError **)error;
atomically原子性:写入内容到文件中时候,会写入一个临时文件中,在把临时文件中所有内容一次性拷贝原文件中;覆盖原来的内容,如果文件啊不存在会自动创建文件,如果文件都不存在那就没办法了会直接报错
[error localizedDescription] :会获得错误精简的信息
字符串的常用用法
1. 转成大写
2. 转成小写
3. 首字母大写,其他都小写
- (NSString *)uppercaseString;
- (NSString *)lowercaseString;
- (NSString *)capitalizedString;
4. 比较字符串内容是否相同
5. 比较字符串大小,注意返回值是一个enum
6. 忽略大小写比较
- (BOOL)isEqualToString:(NSString *)aString;
- (NSComparisonResult)compare:(NSString *)string;
NSOrderedAscending = -1L 右边比左边大,
NSOrderedSame 一样大,
NSOrderedDescending 左边比右边大
- (NSComparisonResult)caseInsensitiveCompare:(NSString *)string;
字符串搜索:
1.是否已xx开头
2.是否已xx结尾
3.检查xx在字符串的位置,返回值range(location,length)(位置,长度),找不到返回(NSNOTFOUND,0)
4.从特定的地方开始搜索。
5.制定一段范围进行搜索。
- (BOOL)hasPrefix:(NSString *)aString;
- (BOOL)hasSuffix:(NSString *)aString;
- (NSRange)rangeOfString:(NSString *)aString;
- (NSRange)rangeOfString:(NSString *)aString options:(NSStringCompareOptions)mask;
- (NSRange)rangeOfString:(NSString *)aString options:(NSStringCompareOptions)mask range:(NSRange)searchRange;
将一个XX结构体转成字符串
NSStringFromXX(xx)
将字符串形转成整型
NSInteger strToint = [str integerValue];
字符串的截取:
- (NSString *)substringFromIndex:(NSUInteger)from;
- (NSString *)substringToIndex:(NSUInteger)to;
- (NSString *)substringWithRange:(NSRange)range;
以separator截取出来成一个NSArray,字符串按照规则截取成Array
- (NSArray *)componentsSeparatedByString:(NSString *)separator;
将数组转成字符串
- (NSString *)componentsJoinedByString:(NSString *)separator;
字符串与路径:
1.将数组中元素拼成一个路径:xx/xx/xx/xx/
2.将一个路径分解成一个数组
3.是否为绝对路径(判断第一个是否为/,有’/’代表绝对路径,从根路径开始)
4.获得最后一个目录
5.删除最后目录,返回前面一个目录
6.在最后面拼接一个目录
+ (NSString *)pathWithComponents:(NSArray *)components;
- (NSArray *)pathComponents;
- (BOOL)isAbsolutePath;
- (NSString *)lastPathComponent;
- (NSString *)stringByDeletingLastPathComponent;
- (NSString *)stringByAppendingPathComponent:(NSString *)str;
String和拓展名:
1.获得拓展名
2.删除拓展名
3.拼接拓展名
- (NSString *)pathExtension;
- (NSString *)stringByDeletingPathExtension;
- (NSString *)stringByAppendingPathExtension:(NSString *)str;
将一个字符串转成其他类型:
- (double)doubleValue;
- (float)floatValue;
- (int)intValue;
求一个字符串长度,得到的是字数的长度,不是字符数,一个中文占2-3个字符数
- (NSUInteger)length;
NSMutableString
NString是不可变的,但是他得子类NSMutableString是可以操作
- (id)initWithCapacity:(NSUInteger)capacity;
+ (id)stringWithCapacity:(NSUInteger)capacity;