2011-06-21 60 views
18

我有一個字符串,我想將它轉換爲Const Char。 我試過,但它不工作將NSString轉換爲const char

NSString *str4 = [NSString stringWithUTF8String:character]; 

回答

42

做這樣看看:

NSString *strSQL = [[NSString alloc]init]; 

然後東西你* STRSQL

那麼這樣的說法:

const char *bar = [strSQL UTF8String]; 
+0

它工作正常嗎? – Christina

+0

是的它工作正常,但我發現它的另一種選擇sqlite3_bind_text();但仍然存在一個問題,它與字符串f9一起工作,但會在INTEGER Values中產生問題。 – Aadil

+0

好高興聽到我的評論工作,,,乾杯 – Christina

2
NSString *myString = @"Hello"; 

const char *cString = [myString cStringUsingEncoding:NSASCIIStringEncoding]; 

const char * cstr2 = [ myString UTF8String ]; 
+0

什麼是這兩種方法之間的區別?在文檔中,使用'NSASCIIStringEncoding'進行轉換時提到,*如果接收器不能無損地轉換爲編碼*,則返回NULL ... –

0

您應該使用cStringUsingEncoding:方法
這個方法here