Object Foundation框架 第三課

指針的指針解釋-&NSString的其他用法


1,指向指針的指針

//要接收指針的地址,其實指針的指針就是指針的地址,所以參數要用指針的指針
void test(NSString **str2){
	//改變指針地址的指向
	*str2 = @"123";
}

int main(int args,char *argv[]){
	
	NSString *str = @"456";
	//要改變指針的值,其實就是改變指針地址的指向,所以我們要傳的是指針的地址,即 &str;
	test(&str);
	NSLog(@"%@",str);
	
	
	return 0;
}

2,NSString的導出(寫入文件)

void test3(){
    NSString *str = @"123123123這是一個導出的字符串";
    //文件不存在會自動創建,文件夾不存在則不會自動創建會報錯
    NSString *path = @"/Users/gx/Desktop/test_export.txt";
    NSError *error;
    //atomically原子性,YES會創建一個臨時文件,當寫完進臨時文件的時候會剪切到目標文件;NO的話是直接寫到目標文件,即使寫入一部分數據也會創建目標文件,不安全
    //編碼格式不對的話也會導致錯誤,高的編碼一般會包含低的編碼 
    //error跟java的異常差不多,如果有異常的話會把錯誤賦值給error
    [str writeToFile:path atomically:YES encoding:NSUTF8StringEncoding error:&error];
    if (error) {
        NSLog(@"導出失敗:%@",error);
    }else{
        NSLog(@"導出成功");
    }
}

3,NSString的搜索

NSString *string1 = @"This is a string";
NSString *string2 = @"string";
NSRange range = [string1 rangeOfString:string2];
int location = range.location;
int leight = range.length;
NSString *astring = [[NSString alloc] initWithString:[NSString stringWithFormat:@"Location:%i,Leight:%i",location,leight]];
NSLog(@"astring:%@",astring);
[astring release];

4,字符串的截取

NSString *a = @"123456.txt";
//判斷前綴
[String1 hasPrefix:@"NSString"]; 
//判斷後綴
[String1 hasSuffix:@".txt"];

NSString *str = @"123456";
//獲取從0開始的後面的字符 只能到字符串最後未結束
NSString *str1 = [str substringFromIndex:0];
//獲取從0開始到3的之間的字符 只能從0開始
NSString *str2 = [str substringToIndex:3];
//獲取從0到3的之間的字符 可以自定義開始和結束
NSString *str3 = [str substringWithRange:NSMakeRange(0, 3)];



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章