2013-04-01 7 views
-2

У меня есть NSString, в котором я хранить значение 2534568 ТеперьПолучить один на один символ (значение) из NSString

я хочу получить первый номер 2, а затем 5 и

затем 3 и так далее ... ..

благодаря заранее

+3

Похожи дубликатом http://stackoverflow.com/questions/3886882/nsstring-get-characters – CAMOBAP

+3

вы еще не имеете пробовал заставляя документацию «NSString». Пожалуйста, вернитесь, если вы это сделаете, и вы не смогли решить проблему даже после этого. – 2013-04-01 12:48:18

+0

для (i = 0; i

ответ

1

Поскольку нет правильного ответа не было предоставлено до сих пор, я должен ответить на этот вопрос, даже если бы я этого не делал иначе. Я не хочу, чтобы ты misleaded:

NSUInteger len = string.length; 
unichar buf[len]; 
[string getCharacters:buf range:NSMakeRange(0, len)]; 

Здесь buf будет содержать символы, которые вы можете перебирать. В качестве альтернативы вы также можете использовать метод charaterAtIndex:, хотя я не уверен, что это не намного медленнее, чем простое индексирование массива. (Таким образом, что должно быть протестированные, если это узкое место, не выполняют преждевременную оптимизацию, хотя.)

+0

Я получаю твердый ответ, который является простым способом получить значение из string.look. for (int i = 0; i <[strMarkList length]; i ++) {NSString * getselectedCell = [strMarkList substringWithRange: (NSRange) {i, 1}]; } это простой и простой способ получить строковое значение по одному, а затем преобразовать в целое число (int newValue = [getselectedCell intValue];) –

+0

@AliRaza Это не просто не сплошное, а переполненное. – 2013-04-02 08:42:04

0

Из строки вы хотите номера,

Так что это будет работать:

NSString *[email protected]"2534568"; 
NSInteger num=[string integerValue]; 
NSInteger temp=num; 

NSMutableArray *digits=[NSMutableArray new]; 
while(temp >0){ 
    digits[digits.count][email protected](temp%10); 
    temp/=10; 
} 

ПРИМЕЧАНИЕ : если вы хотите, чтобы цифры в 2, 5, 3, 4, чтобы затем использовать

for(NSNumber *d in [digits reverseObjectEnumerator]){ 
    NSLog(@"%@",d); 
} 
+0

Хорошо, но я получаю твердый ответ, который является простым способом получить value.look for (int i = 0; i <[strMarkList length]; i ++) { NSString * getselectedCell = [strMarkList substringWithRange: (NSRange) { я, 1}]; }Это простой и простой способ получить строковое значение по одному, а затем преобразовать в целое число (int newValue = [getselectedCell intValue];) –

+0

Что просто, вы используете цикл для итерации, затем извлечение строки, для сохранения вам нужны массивы. Так что в основном мои и H2CO3 сделали то же самое. –

Смежные вопросы