基本常识:
NSStringEncoding中常用的字符编码:
NSASCIIStringEncoding
NSUTF8StringEncoding
NSUnicodeStringEncoding
--常用的替换符--------------
%@ NSString实例
%d,%D,%i 整数
%u,%U 无符号整数
%x 将无符号整数以十六进制小写字母显示
%X 将无符号整数以十六进制大写字母显示
%f 小数
%c 字符
%s C语言字符串
%% 显示%字符本身
--NSRange的定义
typedef struct _NSRange
{
unsigned int location;
unsigned int length;
}NSRange;
NSMakeRange函数
--这个函数比较特殊 返回一个NSRange的对象。
NSMakeRanger(unsigned int location,unsigned int length);
例如:
NSRange range = NSMakeRanger(0,5);
1.初始化NSString的方法:
a.常用基本常见创建NSString对象方法:
字面量方式; alloc+init ; initWithString方法; initWithCString用标准c方式创建 ;stringWithFormat创建格 式化字符串;
NSMutableString的生成: stringWithString ,initWithString
b.常用方法:
计算长度 length ;
字符串连接: -(NSString *)stringByAppendingString:(NSString * )string;
-(NSString *)stringByAppendingFormat:(NSString *)format....
追加方法: +appendString appendFormat
插入方法: +insertString
删除方法: +deleteCharactersInRange
比较函数: isEqualToString 比较前缀:hasPrefix 比较后缀:hasSuffix
字符串检索(NSrange是返回类型):rangeofString的三种形式
- (NSRange)rangeOfString:(NSString *)subString;
- (NSRange)rangeOfString:(NSString *)subString option:(unsigned)mask;
- (NSRange)rangeOfString:(NSString *)subString option:(unsigned)mask range: (NSRange)range;
------------mask常用选项列表-------------
NSCaseInsensitiveSearch 不区分字母大小写
NSLiteralSearch 对字符串进行字节单位的比较,一般可提高检索速度
NSBackwardsSearch 从范围的末尾开始检索
NSAnchoredSearch 仅检索制定范围的前部。忽略字符串中间的检索字符
截取字符串: substringToIndex(不含开头) substringFromIndex substringWithRange
读取文本文件: +(id)stringWithContentsOfFile:(NSStirng*)path usedEncoding:(NSStringEncoding *)enc error:(NSError**)error //自动释放内存
-(id)initWithContentsOfFile:(NSString *)path encoding:(NSStringEncoding)enc error:(NSError**)error
例如:
NSString *string = [NSString stringWithContentsOfFile:@"/user/test/yw.txt" encoding:NSUTF8StringEncoding error:&error];
输出文本文件:
NSString
- (BOOL)writeToFile:(NSString *)path atomically:(BOOL)useAuxiliaryFile encoding:(NSStringEncoding)enc error:(NSError **)error
//参数 atomically 暂时将文件保存到辅助文件中
//path
The file to which to write the receiver. If path contains a tilde (~) character, you must expand it withstringByExpandingTildeInPath before invoking this method.
文件要写入接收器。如果路径中包含一个符号(?)字符,你必须在调用此方法之前展开withstringByExpandingTildeInPath。
----下面是网上找的例子 感谢 @chenshizero
//扩展路径
NSString *Path = @"~/NSData.txt";
NSString *absolutePath = [Path stringByExpandingTildeInPath];
NSLog(@"absolutePath:%@",absolutePath);
NSLog(@"Path:%@",[absolutePath stringByAbbreviatingWithTildeInPath]);
//文件扩展名
NSString *Path = @"~/NSData.txt";
NSLog(@"Extension:%@",[Path pathExtension]);