Introduction
In this I will create a single view application. Here I use a text field from outlet to take input from the keyboard and one button "save", to save data statically on a particular path.
For new entry we edit on @"datafile.dat".
Step 1
Open Xcode by double-clicking on it.
Step 2
Create a New XCode Project by clicking on it.
Step 3
Now select Single View Application and click on Next.
Step 4
Now provide your Product Name and Company Identifier then click on Next.
Step 5
Select the location where you want to save your project and click on Create.
Step 6
Here we write code.
AppDelegate.h
#import <UIKit/UIKit.h>
@class file_exampleViewController;
@interface file_exampleAppDelegate : UIResponder <UIApplicationDelegate>
@property (strong, nonatomic) UIWindow *window;
@property (strong, nonatomic) file_exampleViewController *viewController;
@end
AppDelegate.m
#import "file_exampleViewController.h"
@implementation file_exampleAppDelegate
- (void)dealloc
{
[_window release];
[_viewController release];
[super dealloc];
}
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
self.window = [[[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]] autorelease];
self.viewController = [[[file_exampleViewController alloc] initWithNibName:@"file_exampleViewController" bundle:nil] autorelease];
self.window.rootViewController = self.viewController;
[self.window makeKeyAndVisible];
return YES;
}
@end
ViewController.h
#import <UIKit/UIKit.h>
@interface file_exampleViewController : UIViewController
@property (strong, nonatomic) IBOutlet UITextField *textBox;
- (IBAction)saveText:(id)sender;
@end
ViewController.m
#import "file_exampleViewController.h"
@interface file_exampleViewController ()
@end
@implementation file_exampleViewController
@synthesize textBox;
- (void)saveText:(id)sender
{
NSFileManager *filemgr;
NSData *databuffer;
NSString *dataFile;
NSString *docsDir;
NSArray *dirPaths;
filemgr = [NSFileManager defaultManager];
dirPaths = NSSearchPathForDirectoriesInDomains( NSDocumentDirectory, NSUserDomainMask, YES);
docsDir = [dirPaths objectAtIndex:0];
dataFile = [docsDir
stringByAppendingPathComponent: @"datafile.dat"];
databuffer = [textBox.text
dataUsingEncoding: NSASCIIStringEncoding];
[filemgr createFileAtPath: dataFile
contents: databuffer attributes:nil];
}
- (void)didReceiveMemoryWarning
{
[super didReceiveMemoryWarning];
}
- (void)viewDidLoad
{
[super viewDidLoad];
NSFileManager *filemgr;
NSString *dataFile;
NSString *docsDir;
NSArray *dirPaths;
filemgr = [NSFileManager defaultManager];
// Identify the documents directory
dirPaths = NSSearchPathForDirectoriesInDomains(
NSDocumentDirectory, NSUserDomainMask, YES);
docsDir = [dirPaths objectAtIndex:0];
// Build the path to the data file
dataFile = [docsDir stringByAppendingPathComponent:
@"datafile.dat"];
// Check if the file already exists
if ([filemgr fileExistsAtPath: dataFile])
{
// Read file contents and display in textBox
NSData *databuffer;
databuffer = [filemgr contentsAtPath: dataFile];
NSString *datastring = [[NSString alloc]
initWithData: databuffer
encoding:NSASCIIStringEncoding];
textBox.text = datastring;
}}
- (void)viewDidUnload
{
[super viewDidUnload];
// Release any retained subviews of the main view.
// e.g. self.myOutlet = nil;
self.textBox = nil;
}
@end
ViewController.Xib
Step 7
Now select the iPhone platform to see output in the Simulator.
Output:
Output1 in iPhone:
Output2 in iPhone:
To quit the app we right-click on the simulator and select quit.
To run this app again we click on run.
Output3 in iPhone:
Now after lunching this app we will see "Hello" already written in text field.
So we can say here hello is saved permanently for the specified directory path. To remove it we edit in code.