1. interface 代表類宣告,@implement 代表類實現,@encode 代表將object-c 中型別轉換成指定字串
2 當前char * 型別轉化為字串需要轉化為NSString,轉化程式碼如下:
1 char cTest[12]="hello World\0"; 2 NSString *eString=[[NSString alloc]initWithBytes:cTest length:12 encoding:NSUTF8StringEncoding];
3.NSString 轉化為 char *程式碼如下:
1 NSString *eString=@"Hello world"; 2 const char *cTestAgain1=[eString UTF8String]; 3 const char *cTestAgain2=[eString cStringUsingEncoding:NSUTF8StringEncoding];
4.字串的合併:
NSString *gString=@""; gString =[gString stringByAppendingString:@"hello world"]; 注:由於“stringByAppendingString”會將兩個字串合併,合併的結果以新的形象形式返回,所以gString物件執行後的指標都是新的。
5.字串的拆分操作:
NSString *gString=@"2013/10/01"; NSLog(@"[%@]",[gString componentsSeparatedByString:@"/"]);
6.如果需要從一個字串中提取部分的內容:
1 NSString *hString = @"Hello World"; 2 hString = [hString substringWithRange:NSMakeRange(0, 5)];
hString 最後的內容將會是@“Hello”.這裡我們傳入一個NSRange作為引數,NSRange其實是一個封裝好的結構表示一個範圍,他有兩個值:位置和長度.
如果我們始終是從首字母取5位字母的話,以下程式碼可讀性和速度會更好
1 NSString *hString = @"Hello World";
2 hString = [hString substringToIndex:5];
7.字串比較大小的情況
NSString *aString = @"Hello World"; NSString *bString=@"Hello worlf"; NSComparisonResult compareResult=[aString compare:bString];
8.從一個字串查詢特定內容:
NSString *aString = @"Hello World"; NSRange range=[aString rangeOfString:@"Wor" options:NSCaseInsensitiveSearch];
9.在字串中替換特定內容:
NSString *jString=@"hello Man"; jString = [jString stringByReplacingOccurrencesOfString:@"Man" withString:@"World" options:NSCaseInsensitiveSearch range:NSMakeRange(0, jString.length)];
10.字串大小寫轉換:
1 NSString *kString=@"hello World"; 2 NSLog(@"大寫版本:%@",[kString uppercaseString]); 3 NSLog(@"小寫版本:%@",[kString lowercaseString]);
11.數值轉換程式碼:
NSString *lString=@"3.1415926"; NSLog(@"%f",[lString floatValue]); NSLog(@"%d",[lString intValue]);
12.字串的路徑相關使用:
NSString除了基本的字串整合功能之外,更是提供了方便的路徑操作功能供開發者使用。
比如現在有一個放在A使用者的桌面上的一個名為test.txt的檔案,此檔案的路徑如下:
NSString *aString=@"/Users/A/Desktop/test.txt";
當需要知道此路徑檔案的檔名時,程式碼如下:
aString=[aString lastPathComponent];
當需要知道此檔案的檔案型別時,程式碼如下:
aString=[aString pathExtension];
當需要知道此路徑的使用者名稱時,程式碼如下:
aString=[[aString pathComponents]objectAtIndex:1];
蘋果中,在使用者目錄下可以使用符號“~”來代替使用者路徑,所以如果需要將“~”轉換為全部路徑,程式碼如下:
NSString *aString=@"~/Desktop/test.txt";
aString=[aString stringByExpandingTitldeInPath];
和stringByExpandingTitldeInPath逆向相對的方法為stringByAbbreviatingWithTildeInPath,他將全路徑省略格式“~”
15.NSString 儲存到硬碟(寫入到檔案):
NSString *aString=@"1234455";
NSError *error=nil;
[aString writeToFile:@"/Users/A/Desktop/test.txt" atomically:Yes encoding:NSUTF8StringEncoding error:&error];
其中writeToFile的第二個引數設定為Yes,表示讓系統在寫test.txt檔案時不要直接寫到目標路徑去,而是開一個臨時性的檔案來儲存,名字取成和test.txt不一樣。待臨時性檔案儲存完成後再替換掉原來儲存的/users/A/Desktop/test.txt路徑下的檔案。這樣的好處是,在系統在儲存時發生錯誤了,原來的檔案不會被破壞掉。