NSString 不常用部分

来源:互联网 发布:js设置div的宽度 编辑:程序博客网 时间:2024/04/29 17:12

--常用的替换符-------------- 

%@ 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); 
NSLog(@"location is %d,length is %d",range.location,range.length); 
--------------------------- 
字符串连接,插入和删除 
1、连接 
- (NSString *)stringByAppendingString:(NSString *)string; 
- (NSString *)stringByAppendingFormat:(NSString *)format...; 
例如: 
     NSString *str1 = @"hello"; 
     NSString *str2 = @"world"; 
     NSString *str3 = [str1 stringByAppendingString:str2]; 
     NSString *str4 = [str2 stringByAppendingFormat:@"%d...%d",10,20]; 
     str4 --> world 10...20 
    
     ----------------- 

NSMutableString的生成 
     NSString   + (id)string;  //生成空字符串的实例 
     + (id)stringWithString:(NSString *)string;     //带自动释放内存 
     - (id)initWithString:(NSString *)string; 
     例如: 
     NSMutableString *string = [NSMutableString stringWithString:@"hello"]; 
2、追加字符串 
     NSMutableString 
     + (void)appendString:(NSString *)string; 
     - (void)appendFormat:(NSString *)format...; 
     例如: 
     NSMutableString string = [NSMutableString string]; 
     [string appendString:@"hello"]; 
     [string appendString:@"money"]; 
     [string appendString:@" and world"]; 
3、插入字符串 
     NSMutableString 
     + (void)insertString:(NSString *)string atIndex:(unsigned)index; 
     从index位置插入字符串 
     例如: 
     NSMutableString *string = [NSMutableString stringWithString:@"Mac X"]; 
     [string insertString:@"OS" atIndex:4]; 
     string --> Mac OS X 
4、删除字符串 
     NSMutableString 
     + (void)deleteCharactersInRange:(NSRange)range; 
     例如: 
     NSMutableString *string = [NSMutableString stringWithString:@"Mac os"]; 
     [string deleteCharactersInRange:NSMakeRanger(0,1)]; 
     NSLog(string); 
     string -->ac os; 
5、字符串比较 
     NSString 
     - (BOOL)isEqualToString:(NSString *)string; 
6、比较前置串和后置串 
     NSString 
     - (BOOL)hasPrefix:(NSString *)string; 
     - (BOOL)hasSuffix:(NSString *)string; 
     例如: 
     NSString *str1 = @"Mac OS"; 
     NSString *str2 = @"Mac Pro"; 
     BOOL flag; 
     flag = [str1 hasPrefix:@"Mac"];  YES 
     flag = [str2 hasSuffix:@"OS"];      NO 
7、字符串检索 
     NSString 
     //如果找到就返回范围,否则NSRange的location项被设置为NSNotFound 
     - (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     仅检索制定范围的前部。忽略字符串中间的检索字符 
     例如: 
     NSString *string = @"hello world"; 
     NSRange range = [string rangeOfString:@"he"]; 
     if(range.location != NSNotFound) 
     { 
          NSLog(@" location=%d,length=%d",range.location,range.length); 
     } 
8、截取字符串 
     NSString 
     - (NSString *)substringToIndex:(unsigned)index;     //返回字符串开头至index位的字符串 不包含索引位 
     - (NSString *)substringFromIndex:(unsigned)index; //返回字符串第index位至末尾的字符串 包含索引位 
     - (NSString *)substringWithRange:(NSRange)range;     //返回字符串中范围range内的字符串 包含索引位 
     例如: 
     NSString *string = [string substringWithRange:NSMakeRange(5,2)]; 
9、读取文本文件 
     NSString 
     + (id)stringWithContentsOfFile:(NSString *)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]; 
     if(string){} 

0 0