2010-02-05 10 views
5

¿Cómo imprimir un elemento de matriz en un índice particular en Objective-C? Mi código es el siguiente:¿Cómo imprimir un solo elemento de matriz en Objective-C?

NSString *String=[NSString StringWithContentsOFFile:@"/User/Home/myFile.doc"]; 
NSString *separator = @"\n"; 
NSArray *array = [String componetntsSeparatedByString:separator]; 
NSLog(@"%@",array); 

soy capaz de imprimir el contenido completo de una matriz a la vez, pero quiero asignar el elemento en cada índice en una cadena, como ...

str1=array[0]; 
str2=array[1]; 
str3=array[0];...this continues 

¿Cómo hago esto?

+0

hey recibí la respuesta ... lo siento ... es NSLog (@ "% @", [array objectAtIndex: index]); – suse

Respuesta

8

Quiere el método objectAtIndex:. Ejemplo:

NSString *str1 = [array objectAtIndex:0]; 
NSString *str2 = [array objectAtIndex:1]; 
NSString *str3 = [array objectAtIndex:2]; 

Desde el documentation:

objectAtIndex:
devuelve el objeto situado en índice.

- (id)objectAtIndex:(NSUInteger)index 

Parámetros
índice
Un índice dentro de los límites del receptor.

Valor devuelto
El objeto situado a índice.

Discusión
Si índice está más allá del final de la matriz (es decir, si índice es mayor que o igual que el valor devuelto por count), un NSRangeException se eleva.

+0

hey ya ... gracias ... Pero tenemos alguna función para saber cuántos elementos de matriz hay en una matriz. , porque necesito poner cada elemento de una matriz en una cadena, luego hago alguna operación con la cadena, luego tomo el siguiente elemento de matriz en la misma cadena y realizo alguna operación en la cadena ... así mismo continúa. así que pensé en usar un bucle for. , por lo tanto, para la condición de terminación en for loop, ¿qué debería escribirse? ayuadame. es similar a (int n = 0; n <** ?? qué escribir aquí **; n ++) { NSString * string = [array objectAtIndex: n]; // hacer alguna operación } – suse

+0

hey ... cualquiera, por favor respuesta – suse

+0

Oye .. No hay problema .. Tengo la solución para ello :) – suse

0

si esto es solo para la depuración, puede intentar usar po <> en el gdb.

0

partir de la versión 3.3 sonido metálico, que puede utilizar la notación [index], por lo

NSString *str1 = array[0]; 

iba a funcionar ahora. Vea here para más detalles.

Cuestiones relacionadas