2009-03-02 3 views
7

Ich möchte einige Zeichen hinzufügen, um einige Zeichenfolgen zu trennen. Wie füge ich ein Zeichen zu einer Zeichenfolge hinzu?Wie verkette ich Char und String auf dem iPhone?

z.B. füge '\ x01' zu "Hello" hinzu, füge '\ x02' vor "World" hinzu und füge '\ x03' nach "World" hinzu.

So kann ich eine Zeichenfolge "\ x01 Hallo \ x02 World \ x03" erstellen, die einige separate Marken hat.

Antwort

14

Wenn Sie eine Zeichenfolge ändern möchten, müssen Sie NSMutableString statt NSString verwenden. Es gibt keine solche Notwendigkeit, wenn Sie eine Zeichenfolge von Grund auf neu erstellen möchten.

Zum Beispiel können Sie +stringWithFormat: Methode verwenden:

NSString * myString = [NSString stringWithFormat:@"%c %@ %c %@ %c", 
               0x01, 
               @"Hello", 
               0x02, 
               @"World", 
               0x03]; 
+0

das ist das Ticket;) –

2

Hm ..

Man könnte so etwas tun:

NSString *hello = @"hello"; 
char ch [] = {'\x01'}; 
hello = [hello stringByAppendingString:[NSString stringWithUTF8String:(char*)ch]]; 

ich ein char * machen aus Ihrem einzigen char anhängen und stringWithUTF8String es hinzuzufügen verwenden.

Es gibt jedoch eine weniger langatmige Art, es zu lösen!

Nick.

+0

'stringWithUTF8String' erwartet einen nullterminierten String, ich glaube, das ist nicht das, was wir hier haben. –

2

Nicht genau sicher, was Sie fragen ... Aber würde StringWithFormat Ihnen vielleicht helfen?

Z. B,

[NSString stringWithFormat:@"%c%@%c%@%c", 1, @"hello", 2, @"world", 3];