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 without any pesky ads! More details here.

Leave a Comment!

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