2009-10-14 28 views

回答

33
NSString *testString = @"test"; 
+0

這就是我正在尋找的答案。雖然Carl Norum的答案非常詳細。 – powtac 2009-10-15 13:18:45

+1

順便說一下,「@」代表什麼? – powtac 2012-05-28 16:36:40

+1

卡爾諾魯姆的回答清楚地解釋了答案。 '@「aString」'產生一個NSString對象。 ''aString''是一個C字符串,它只是一個字符數組。 – 2012-05-28 17:09:53

45

AC串就像C.

char myCString[] = "test"; 

一個NSString使用@字符:

NSString *myNSString = @"test"; 

如果您需要管理的NSString的內存:

NSString *myNSString = [NSString stringWithFormat:@"test"]; 
NSString *myRetainedNSString = [[NSString alloc] initWithFormat:@"test"]; 

或者如果你需要一個可編輯的字符串:

NSMutableString *myMutableString = [NSMutableString stringWithFormat:@"test"]; 

您可以從Apple NSString documentation瞭解更多。

+0

什麼是beween的NSString和焦炭的不同? – powtac 2009-10-14 16:51:13

+4

'char'是一個本地C類型,'NSString' /'NSMutableString'是用於管理Cocoa/Objective-C中字符串的類。它們與正常的C字符串(char數組)根本沒有多大關係。您應該查看一些基本的「how-to」Objective-C文檔以開始。 – 2009-10-14 16:55:58

+0

'@'是什麼意思? – powtac 2013-03-13 10:06:12

9

標準字符串賦值可以做到像這樣:

NSString *myTestString = @"abc123"; 

除了基本配置有一大堆的方法,您使用NSString類時你不會得到與標準字符[]數組。這就是爲什麼客觀編程更好!

例如填充一個Html網頁中的內容的字符串,用一個單一的代碼行!**

創建和初始化字符串

+ string 
– init 
– initWithBytes:length:encoding: 
– initWithBytesNoCopy:length:encoding:freeWhenDone: 
– initWithCharacters:length: 
– initWithCharactersNoCopy:length:freeWhenDone: 
– initWithString: 
– initWithCString:encoding: 
– initWithUTF8String: 
– initWithFormat: 
– initWithFormat:arguments: 
– initWithFormat:locale: 
– initWithFormat:locale:arguments: 
– initWithData:encoding: 
+ stringWithFormat: 
+ localizedStringWithFormat: 
+ stringWithCharacters:length: 
+ stringWithString: 
+ stringWithCString:encoding: 
+ stringWithUTF8String: 

創建和從文件初始化字符串

+ stringWithContentsOfFile:encoding:error: 
– initWithContentsOfFile:encoding:error: 
+ stringWithContentsOfFile:usedEncoding:error: 
– initWithContentsOfFile:usedEncoding:error: 

創建並從URL初始化字符串

+ stringWithContentsOfURL:encoding:error: 
– initWithContentsOfURL:encoding:error: 
+ stringWithContentsOfURL:usedEncoding:error: 
– initWithContentsOfURL:usedEncoding:error: 

如果你需要一個字符串,你可以編輯你想看看它的緩存:

NSMutableString 
相關問題