565Stripping Characters from an NSString

NSString *stripped = [unstripped stringByTrimmingCharactersInSet:[NSCharacterSet characterSetWithCharactersInString:@"\n\t "]];
Well, Cocoa, a bit of too much syntactic nutrasweet here. Take a look at PHP and wheep:
$stripped = trim($unstripped);
(Yes, I am aware that’s somewhat of an unfair comparion, but still…)

564NSData to NSString and vice versa

From NSData to NSString:
NSString *s = [[NSString alloc] initWithData:d encoding:NSUTF8StringEncoding];
And the other way round:
NSData *d = [s dataUsingEncoding:NSUTF8StringEncoding]:

484Printing Selectors in NSLog

Using NSStringFromSelector to convert the selectos into a NSString, and the print the object:
NSLog(@"%@", NSStringFromSelector(selector) );
Or print it directly with good, old-fashioned C:
NSLog(@"%s", selector,);

452Padding with Zeros (or other characters)

int x = 11;

[NSString stringWithFormat:@"%03i", x];
// @"011"

[NSString stringWithFormat:@"%+5i", x];
// @"+++11"

[NSString stringWithFormat:@"%+05i", x];
// @"+0011"
And not really like that. 381. I’ll still have to learn a lot of C.

383String By Appending Path Component

NSString *host = @"myhost";
NSString *videoFile = @"myVideoFileName.m4v";
NSURL *videoURL = [NSURL urlWithString[host stringByAppendingPathComponent videoFile];

MPMoviePlayerController *movie = [[MPMoviePlayerController alloc] initWithContentURL: videoURL];

381Zero-Padding in Objective-C

The age-old problem. Files, that are stored with padded zeros 000, 001, 002, 003 – and a counter that doesn’t have this zero-padding. There are probably myriad solution to that problem, here’s my take: Create a temporary string consisting of a minimum of 3 characters length.
NSString *tempZeros = [NSString stringWithFormat:@"00%i", i];
Get the last 3 characters, shave off the rest.
NSString *zeroPaddedIndex = [tempZeros substringFromIndex:[tempZeros length] - 3];
No if’s, no but’s, no clauses. Update: Of course, there’s always a better way. 452

376Variable length of accuracy of float in NSString

float f = 1.23456;

NSLog(@"%.2f", f);
NSLog(@"%.0f", f);
NSLog(@"%.0f", f);
1.23 1 1.23456

246writeToFile – quick file writing

writetofile API Reference
- (BOOL)writeToFile:(NSString *)path 
         atomically:(BOOL)useAuxiliaryFile;
Works with:
NSDictionary
NSArray
NSData
NSString
For more complicated purposes, NSOutputStream might be the best option, but for simply writing a date or even XML this might be the simplest and fasted way.

212NSString and NSMutableString

Should have been clear, but was not:
NSString *s = @"aString";
s = @"anotherString";
NSLog(@"%@", s);
// anotherString

NSMutableString *m = @"aMutableString";
[m appendString:@"andAnAppendedString"];
NSLog(@"%@", m);
// aMutableStringandAnAppendedString
NString allows for the replacement of its whole content by simply assigning a new value. With NSMutableString it is possible to add/delete/insert strings at arbitrary places in a string.

201Changing NSMutableString into NSString

NSMutableString *s; … -(void)functionA:(NSString *)string { [self.s appendString: string]; } -(void)functionB:(NSString *)string { NSString* c = self.s; NSString* c = [NSString stringWithString: self.s]; } “Returns a string created by copying the characters from another given string.” self.s is a refernce to s, might change over time, stringWithString makes a copy, a “snapshot” of self.s…