AlanF
AlanF

Reputation: 1601

cocoa and objective c save, edit and load files

hello I am trying to create a text file that will then store some data

- (IBAction)saveUser:(id)sender{
   NSString *name = [nameField stringValue];
   NSString *weight = [weightField stringValue];
   NSDate *date = [datePick dateValue];

}

I want to be able to create a file that stores the following information and uses the name field as the name of the file. I also want to be able to load the file and read that data from it

Any help is appreciated Thanking You

Upvotes: 1

Views: 981

Answers (2)

Itachi
Itachi

Reputation: 6070

I think you may get some informations from class NSFileManager, such as like this,

[fileManager createFileAtPath:filePath contents:contentData attributes:NULL];

the contentData is NSData, and it includes the content of what you want to save, the filename is in filePath that you need to set.

Thanks!

Upvotes: 0

Trausti Thor
Trausti Thor

Reputation: 3774

This is quite simple. But you might want to look into NSMutableDictionary instead. Both NSString and Dictionary have methods writeToFile:@"filename.txt".

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];

NSMutableDictionary *dict = [[NSMutableDictionary alloc] init];
[dict setValue:[nameField stringValue] forKey:@"name"];
[dict setValue:[weightField stringValue] forKey:@"weight"];
[dict setValue:date forKey:@"date"];

[dict writeToFile:name atomically:YES];

you read from the file the same way,

NSMutableDictionary *dict = [[NSMutableDictionary alloc] initWithContentsOfFile:name];

As simple as it gets

Upvotes: 3

Related Questions