Я написал оболочку Objective-C, которая создает HTML-код с NSMutableString, который возвращает значение в виде строки NSString.
Я объявил NSString и NSMutableString в файле inteface .h:
NSString *_outputLanguage; // Tests language output
NSMutableString *outputBuilder;
NSString *output;
Это пример из кода .m реализации фреймворка (я не могу напечатать реальный код, так как он проприетарный):
-(NSString*)doThis:(NSString*)aString num:(int)aNumber {
if ([outputBuilder length] != 0) {
[outputBuilder setString:@""];
}
if ([_outputLanguage isEqualToString:@"html"]) {
[outputBuilder appendString:@"Some Text..."];
[outputBuilder appendString:aString];
[outputBuilder appendString:[NSString stringWithFormat:@"%d", aNumber]];
}
else if ([_outputLanguage isEqualToString:@"xml"]) {
[outputBuilder appendString:@"Etc..."];
}
else {
[outputBuilder appendString:@""];
}
output = outputBuilder;
return output;
}
Когда я писал текстовую программу, NSLog просто распечатывал «(ноль)». Код, который я там написал, был:
TheClass *instance = [[TheClass alloc] init];
NSString *testString = [instance doThis:@"This String" num:20];
NSLog(@"%@", testString);
[instance release];
Надеюсь, этой информации достаточно!