• <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++博客 :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理
            http://keys.iteye.com/blog/1117190
            個人學習筆記 
            NSString 

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

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

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

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

            --使用格式創建字符串------------- 
            + (id)stringWithFormat:(NSString *)format... 
            - (id)initWithFormat:(NSString *)format... 
            例如: 
            NSString *str = "hello"; 
            NSString *string = [NSString stringWithFormat:@"%@ world",str]; 
            NSLog(string); 結果:hello world 
            --常用的替換符-------------- 
            %@ NSString實例 
            %d,%D,%i 整數 
            %u,%U 無符號整數 
            %x 將無符號整數以十六進制小寫字母顯示 
            %X 將無符號整數以十六進制大寫字母顯示 
            %f 小數 
            %c 字符 
            %s C語言字符串 
            %% 顯示%字符本身 

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

            --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); 

            --------------------------- 
            計算字符串長度 
            - (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;  //生成空字符串的實例 
                 + (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){} 
            10、輸出文本文件 
                 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. 
                ----下面是網上找的例子 感謝 @chenshizero 
                //擴展路徑 
                NSString *Path = @"~/NSData.txt"; 
                NSString *absolutePath = [Path stringByExpandingTildeInPath]; 
                NSLog(@"absolutePath:%@",absolutePath); 
                NSLog(@"Path:%@",[absolutePath stringByAbbreviatingWithTildeInPath]); 

                //文件擴展名 
                NSString *Path = @"~/NSData.txt"; 
                NSLog(@"Extension:%@",[Path pathExtension]); 
            久久电影网2021| 国内高清久久久久久| 亚洲AV无码1区2区久久| 国产91色综合久久免费| 久久强奷乱码老熟女| 亚洲日韩中文无码久久| 久久国产乱子伦精品免费强| 国産精品久久久久久久| 精品免费久久久久久久| 性高朝久久久久久久久久| 91麻精品国产91久久久久 | 久久综合色区| 久久久久亚洲AV无码专区首JN| 久久精品国产99国产精品澳门| 久久人人爽人爽人人爽av | 午夜不卡888久久| 久久99精品国产麻豆宅宅| 品成人欧美大片久久国产欧美| 国产成人无码久久久精品一| 亚洲日本久久久午夜精品| 国产成人久久久精品二区三区| 久久精品国产亚洲av麻豆蜜芽 | 国产精品久久久久久久久久影院| 国产免费福利体检区久久| 性色欲网站人妻丰满中文久久不卡| 久久久久国产一区二区| 久久精品免费网站网| 成人久久精品一区二区三区| 亚洲AV无码久久精品蜜桃| 香蕉99久久国产综合精品宅男自| 久久不射电影网| 91超碰碰碰碰久久久久久综合| 精品综合久久久久久888蜜芽| 久久午夜无码鲁丝片秋霞 | 久久男人AV资源网站| 狠狠色综合久久久久尤物| 久久久久亚洲?V成人无码| 精品综合久久久久久88小说| 国产亚洲美女精品久久久| 欧美亚洲日本久久精品| 香蕉久久永久视频|