SORU
30 HAZİRAN 2009, Salı


Bir şekilde stringWithFormat NSString bağımsız değişken pozisyon/dizin belirtin var mı?

Seni dize biçimi belirleyici bağımsız değişken dizin belirtmek için izin veren C# sözdizimi, örneğin vardır:

string message = string.Format("Hello, {0}. You are {1} years old. How does it feel to be {1}?", name, age);

Bağımsız değişkenler birden fazla kez kullanabilirsiniz ve ayrıca kullanılan sağlanan bağımsız değişkenler ihmal. Another question,* %[index]$[format] örneğin *7 şeklinde C/C için aynı biçimlendirme bahseder. NSString için almak mümkün olmamıştırtam olarakbu sözdizimi, saygı, iyi davranır çünküatlama argümanlarbiçiminden. Aşağıdaki beklendiği gibi çalışmıyor (NSObject ** 8* parametre çözümlemesi için çalışır çünkü EXC_BAD_ACCESS):

int age = 23;
NSString * name = @"Joe";
NSString * message = [NSString stringWithFormat:@"Age: %2$i", name, age];

Konumsal bağımsız olmadığını biçimi tuhaf bir gereklilik gibi görünüyor (): argüman eksik yok sadece saygı

NSString * message = [NSString stringWithFormat:@"Age: %2$i; Name: %1$@", name, age];

Tüm bu aramalar OS X: düzgün çalışması

printf("Age: %2$i", [name UTF8String], age);
printf("Age: %2$i %1$s", [name UTF8String], age);

Üstesinden gelmenin bir yolu bu Objective-C / NSString Kakao kullanan var mı? Yerelleştirme amaçlı yararlı olacaktır.

CEVAP
30 HAZİRAN 2009, Salı


Ve destek NSString CFString/konumsal bağımsız değişkenleri reorderable.

NSString *string = [NSString stringWithFormat: @"Second arg: %2$@, First arg %1$@", @"<1111>", @"<22222>"];
NSLog(@"String = %@", string);

Ayrıca Bkz: Apple: String Resources belgeleri

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • AndyMcMillinTV

    AndyMcMillin

    6 HAZİRAN 2007
  • CruzerLite

    CruzerLite

    1 EKİM 2011
  • stewmurray47

    stewmurray47

    1 Kasım 2006