• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            posts - 319, comments - 22, trackbacks - 0, articles - 11
              C++博客 :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理
            http://keys.iteye.com/blog/1117190
            個(gè)人學(xué)習(xí)筆記 
            NSString 

            --實(shí)例化方法-------------- 
            NSString *str = [[NSString alloc] init]; 
            NSString *str = [[[NSString alloc] init] autorelease];   

            注意:在NSString 中存在自己的實(shí)例化和初始化的方法 例如: 
            NSString *str1 = [NSString stringWithCString:"new String" enconding: NSACIIStringEncoding]; 
            NSString *str2 = [NSString alloc] initWithCString:"new String" enconding: NSACIIStringEncoding]; 
            str1和str2兩個(gè)對(duì)象是相同的。 

            --NSStringEncoding 中常用的字符編碼---------------- 
                 NSASCIIStringEncoding 
                 NSUTF8StringEncoding 
                 NSUnicodeStringEncoding 

            --NSString創(chuàng)建實(shí)例---------------- 
            帶“@”符號(hào)的方法只能定義含有英文和數(shù)字的NSString實(shí)例,例如: 
            NSString *str = "Hello money~"; 
            --生成含有中文的NSString方法------------- 
            //此方法自動(dòng)釋放內(nèi)存 
            + (id)stringWithCString:(const char*)cString encoding:(NSStringEncoding)encoding; 
            //進(jìn)行alloc后進(jìn)行初始化 
            - (id)initWithCString:(const char*)cString encoding:(NSStringEncoding)encoding; 
            例如: 
            NSString *string = [NSString stringWithCString:"您好" encoding:NSUTF8StringEncoding]; 
            NSString *string = [[NSString alloc] initWithCString:"您好" encoding:NSUTF8StringEncoding]; 

            --使用格式創(chuàng)建字符串------------- 
            + (id)stringWithFormat:(NSString *)format... 
            - (id)initWithFormat:(NSString *)format... 
            例如: 
            NSString *str = "hello"; 
            NSString *string = [NSString stringWithFormat:@"%@ world",str]; 
            NSLog(string); 結(jié)果:hello world 
            --常用的替換符-------------- 
            %@ NSString實(shí)例 
            %d,%D,%i 整數(shù) 
            %u,%U 無(wú)符號(hào)整數(shù) 
            %x 將無(wú)符號(hào)整數(shù)以十六進(jìn)制小寫(xiě)字母顯示 
            %X 將無(wú)符號(hào)整數(shù)以十六進(jìn)制大寫(xiě)字母顯示 
            %f 小數(shù) 
            %c 字符 
            %s C語(yǔ)言字符串 
            %% 顯示%字符本身 

            -------------------------- 
            NSRange 

            --NSRange的定義 
            typedef struct _NSRange 

                 unsigned int location; 
                 unsigned int length; 
            }NSRange; 

            NSMakeRange函數(shù) 
            --這個(gè)函數(shù)比較特殊 返回一個(gè)NSRange的對(duì)象。 
            NSMakeRanger(unsigned int location,unsigned int length); 
            例如: 
            NSRange range = NSMakeRanger(0,5); 
            NSLog(@"location is %d,length is %d",range.location,range.length); 

            --------------------------- 
            計(jì)算字符串長(zhǎng)度 
            - (unsigned int)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;  //生成空字符串的實(shí)例 
                 + (id)stringWithString:(NSString *)string;     //帶自動(dòng)釋放內(nèi)存 
                 - (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項(xiàng)被設(shè)置為NSNotFound 
                 - (NSRange)rangeOfString:(NSString *)subString; 
                 - (NSRange)rangeOfString:(NSString *)subString option:(unsigned)mask; 
                 - (NSRange)rangeOfString:(NSString *)subString option:(unsigned)mask      range:(NSRange)range;                                                                                        
                 -----mask常用選項(xiàng)列表 
                 NSCaseInsensitiveSearch          不區(qū)分字母大小寫(xiě) 
                 NSLiteralSearch          對(duì)字符串進(jìn)行字節(jié)單位的比較,一般可提高檢索速度 
                 NSBackwardsSearch     從范圍的末尾開(kāi)始檢索 
                 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;     //返回字符串開(kāi)頭至index位的字符串 不包含索引位 
                 - (NSString *)substringFromIndex:(unsigned)index; //返回字符串第index位至末尾的字符串 包含索引位 
                 - (NSString *)substringWithRange:(NSRange)range;     //返回字符串中范圍range內(nèi)的字符串 包含索引位 
                 例如: 
                 NSString *string = [string substringWithRange:NSMakeRange(5,2)]; 
            9、讀取文本文件 
                 NSString 
                 + (id)stringWithContentsOfFile:(NSString *)path usedEncoding:(NSStringEncoding *)enc error:(NSError **)error     //自動(dòng)釋放內(nèi)存 
                
                 - (id)initWithContentsOfFile:(NSString *)path encoding:(NSStringEncoding)enc error:(NSError **)error 
                
                 例如: 
                 NSString *string = [NSString stringWithContentsOfFile:@"/user/test/yw.txt" encoding:NSUTF8StringEncoding error:&error]; 
                 if(string){} 
            10、輸出文本文件 
                 NSString 
                 - (BOOL)writeToFile:(NSString *)path atomically:(BOOL)useAuxiliaryFile encoding:(NSStringEncoding)enc error:(NSError **)error 
                 //參數(shù) atomically 暫時(shí)將文件保存到輔助文件中 
                 //path 
                 The file to which to write the receiver. If path contains a tilde (~) character, you must expand it withstringByExpandingTildeInPath before invoking this method. 
                ----下面是網(wǎng)上找的例子 感謝 @chenshizero 
                //擴(kuò)展路徑 
                NSString *Path = @"~/NSData.txt"; 
                NSString *absolutePath = [Path stringByExpandingTildeInPath]; 
                NSLog(@"absolutePath:%@",absolutePath); 
                NSLog(@"Path:%@",[absolutePath stringByAbbreviatingWithTildeInPath]); 

                //文件擴(kuò)展名 
                NSString *Path = @"~/NSData.txt"; 
                NSLog(@"Extension:%@",[Path pathExtension]); 
            99久久国产综合精品五月天喷水| 中文精品久久久久国产网址| 久久99九九国产免费看小说| 熟妇人妻久久中文字幕| 久久午夜电影网| 久久人人爽人人人人爽AV| 久久久久人妻一区精品性色av| 亚洲国产精品久久| 少妇精品久久久一区二区三区| 精品久久人人做人人爽综合 | 久久―日本道色综合久久| 国产成人综合久久久久久| 久久久国产亚洲精品| 91久久成人免费| 中文字幕乱码久久午夜| 狠狠色综合网站久久久久久久| 久久久久久久久久久| 久久精品国产精品亚洲人人 | 久久国产精品偷99| 亚洲精品国产字幕久久不卡| 久久99精品国产麻豆婷婷| 无码日韩人妻精品久久蜜桃| 亚洲午夜精品久久久久久浪潮| 精品久久久久久亚洲| 亚洲精品乱码久久久久66| 久久91精品国产91| 色综合久久88色综合天天 | 嫩草影院久久国产精品| AV无码久久久久不卡蜜桃| 亚洲国产美女精品久久久久∴| 麻豆精品久久久久久久99蜜桃| 亚洲精品成人久久久| 亚洲国产日韩欧美久久| 久久伊人色| 亚洲午夜福利精品久久| 精品久久久久久无码不卡| 久久久久久精品免费看SSS| 精品国产乱码久久久久软件| 中文字幕无码久久久| 久久SE精品一区二区| 日产精品99久久久久久|