How to read the contents of a text file into an NSString

- by

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:

// 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:

// split our string into an array
NSArray *mySplit = [myFile componentsSeparatedByString:@"\n"];

// display any one of them like this
NSLog(@"Third Position: %@", [mySplit objectAtIndex:2]);

If you enjoy my content, please consider supporting me on Ko-fi. In return you can browse this whole site witout any pesky ads! More details here.

Add your voice!

This site uses Akismet to reduce spam. Learn how your comment data is processed.