Imagine we had a file called myfile.txt which is a standard text file. On each line we have a new item we’d like to read so that our app can do something with it. Here’s how we do that:
1 2 3 4 5 6 7 8 |
// get a reference to our file NSString *myPath = [[NSBundle mainBundle]pathForResource:@"myfile" ofType:@"txt"]; // read the contents into a string NSString *myFile = [[NSString alloc]initWithContentsOfFile:myPath encoding:NSUTF8StringEncoding error:nil]; // display our file NSLog("Our file contains this: %@", myFile); |
It is likely that instead of a long list of text we’d rather have each line in a separate string.
Thankfully there’s a method for this:
1 2 3 4 5 |
// split our string into an array NSArray *mySplit = [myFile componentsSeparatedByString:@"\n"]; // display any one of them like this NSLog(@"Third Position: %@", [mySplit objectAtIndex:2]); |
Apple’s preferred way of working is to use URLs rather than paths. The above example would work just as well by using URL methods: