你好,歡迎來到IOS教程網

 Ios教程網 >> IOS訊息 >> 關於IOS >> IOS NSString 用法詳解

IOS NSString 用法詳解

編輯:關於IOS

//NSString 操作均不改變自身值 
//構建字符串 
NSString *szTmp = @"A string";      //直接賦值 
szTmp = nil; 
 
int n = 5; 
NSString *szMyString = [NSString stringWithFormat:@"The number is %d",n];   //The number is 5 
[szMyString stringByAppendingFormat:@"%d",22];  //附加字符串返回值:The number is 522 
                                                //但是szMyString本身並沒有改變,其值依然:The number is 5   
[cpp]

//長度與索引字符 
NSLog(@"%d",szMyString.length);                 //字符串長度:15 
NSLog(@"%c",[szMyString characterAtIndex:2]);   //返回字符:e 
[cpp]
 
//與c字符串相互轉換 
printf("%s/n",[szMyString UTF8String]);         //轉為__strong const char * 
const char *szTmp1 = [szMyString cStringUsingEncoding:NSUTF8StringEncoding]; 
printf("%s/n",szTmp1);                          //轉為__strong const char * 
 
NSLog(@"%@",[NSString stringWithCString:szTmp1 encoding:NSUTF8StringEncoding]); //轉為nsstring 
[cpp]

//字符串寫文件 
NSError *error; 
NSString *szPath = [NSHomeDirectory()           //應用程序沙盒路徑 
                    stringByAppendingPathComponent:@"Documents/testFile.txt"];  //附加路徑地址 
if (![szMyString writeToFile:szPath atomically:YES  //atomically:是否是原子訪問文件的 
                    encoding:NSUTF8StringEncoding error:&error]) {          //寫入成功返回yes 否則no 
    NSLog(@"Error writing to file :%@",[error localizedDescription]);       //輸出錯誤描述 
    return 1; 

NSLog(@"File write success"); 
[cpp]

//文件讀字符串 
NSString *szInString = [NSString stringWithContentsOfFile:szPath            //讀取文件信息 
                        encoding:NSUTF8StringEncoding error:&error]; 
if (!szInString) 

    //失敗 

NSLog(@"%@",szInString);        //成功 
[cpp]

//字符串轉為數組 
NSArray *arrayWord = [szMyString componentsSeparatedByString:@" "]; //有空格的拆分為單詞保存 
NSLog(@"%@",arrayWord); 
[cpp]

//索引子串 
NSString *szSub1 = [szMyString substringToIndex:3];     //0-2,前3個:The 
NSLog(@"%@",szSub1); 
 
NSString *szSub2 = [szMyString substringFromIndex:4];   //4-尾,去掉前4個:number is 5 
NSLog(@"%@",szSub2); 
[cpp]

//范圍索引 
NSRange range; 
range.location = 4;     //從4開始 
range.length = 6;       //6個字符 
NSString *szSub3 = [szMyString substringWithRange:range];       //number 
NSLog(@"%@",szSub3); 
[cpp] view plaincopy
//搜索與替換 
NSRange rangeSearch = [szMyString rangeOfString:@"is 5"];   //搜索 
if (rangeSearch.location != NSNotFound) {           //搜索不到是 NSNotFound 
    //成功:rangeSearch.location;//位置 rangeSearch.length;//長度 

 
NSLog(@"%@",[szMyString stringByReplacingCharactersInRange:rangeSearch      //用位置匹配替換 
                                                withString:@"isn't 10"]); 
 
NSString *szReplaced = [szMyString stringByReplacingOccurrencesOfString:@" " withString:@"*"];  //匹配字符串替換 
NSLog(@"%@",szReplaced); 
[cpp]

//改變大小寫 
NSLog(@"%@",[szMyString uppercaseString]);      //大寫 
NSLog(@"%@",[szMyString lowercaseString]);      //小寫 
NSLog(@"%@",[szMyString capitalizedString]);    //首字母大寫 
[cpp]

//比較字符串 
NSString *sz1 = @"Hello World!"; 
NSString *sz2 = @"Hello Mom!"; 
if ([sz1 isEqualToString:sz2]) {/*相等*/} 
if ([sz1 hasPrefix:@"Hello"]) {NSLog(@"前部分相等");}        //從頭開始比較 
if ([sz1 hasSuffix:@"d!"]) {NSLog(@"後部分相等");}       //從尾部比較 
[cpp] view plaincopy
//字符串轉換數字 
NSString *szNumber = @"3.14"; 
[szNumber intValue]; 
[szNumber boolValue]; 
[szNumber floatValue]; 
[szNumber doubleValue]; 
[cpp] view plaincopy
//可變字符串 
NSMutableString *szMuMyString = [NSMutableString stringWithString:@"Hello"]; 
[szMuMyString appendFormat:@"World"];       //字符串,改變自身 
[szMuMyString uppercaseString]; 
NSLog(@"%@",szMuMyString); 

  1. 上一頁:
  2. 下一頁:
蘋果刷機越獄教程| IOS教程問題解答| IOS技巧綜合| IOS7技巧| IOS8教程
Copyright © Ios教程網 All Rights Reserved