NSBundle is very useful, and includes an excellent method that returns the path to a file:

- (NSString *)pathForResource:(NSString *)name ofType:(NSString *)extension;

This method, however, requires two strings, which didn’t work for my app. So I wrote the extension. I realize you could use:

  [bundle pathForResource:[string stringByDeletingPathExtension] ofType:[string pathExtension]];

but mine is easier:

  [bundle pathForResource:string];

Download extension