2011-05-14 185 views
-1

我的代碼很好,直到知道爲止,如果我將一個雙位數字放入文本字​​段(如12),nslog返回2個單位數字(如1和2)。現在我需要把這兩個單個數字的數字放到2個字符串中。有人可以幫助我嗎?提前致謝。將char轉換爲字符串

NSString *depositOverTotalRwy = [NSString stringWithFormat:@"%@", [deposit text]]; 
NSArray *components = [depositOverTotalRwy 
         componentsSeparatedByString:@"/"]; 
NSString *firstThird = [components objectAtIndex:0]; 
    for(int i = 0; i < [firstThird length]; i++) 
{ 
    char extractedChar = [firstThird characterAtIndex:i]; 
    NSLog(@"%c", extractedChar); 
} 

回答

8

您應該可以使用-stringWithFormat:

NSString *s = [NSString stringWithFormat:@"%c", extractedChar]; 

編輯:

您可以將它們存儲在數組中。

NSMutableArray *digits = [NSMutableArray array]; 

for (int i = 0; i < [s length]; i++) { 
    char extractedChar = [s characterAtIndex:i]; 

    [digits addObject:[NSString stringWithFormat:@"%c", extractedChar]]; 
} 
+0

是的它的工作原理,但這樣做我得到兩個數字在同一個字符串。如果我想把它分成兩個字符串呢?謝謝 – mat 2011-05-14 06:03:20

+0

我編輯了我的答案來處理你的情況。 – 2011-05-14 06:17:04

+0

+1,不錯的答案.. – 2014-02-03 12:59:31

1

嘗試打印的使用NSLog()firstThird值,看看它究竟持有,你的代碼似乎是正確的,

使用characterAtIndex功能NSString在已知位置提取字符

- (unichar)characterAtIndex:(NSUInteger)index 

如下使用

NSString *FirstDigit = [NSString stringWithFormat:@"%c", [myString characterAtIndex:0]]; 
NSString *SecondDigit = [NSString stringWithFormat:@"%c", [myString characterAtIndex:1]];