Showing posts with label NSString. Show all posts
Showing posts with label NSString. Show all posts

Tuesday, June 10, 2014

A Code Snippet For Converting NSDate To NSString With NSDateFormatter

When working on programs that manipulate Dates sometimes those days need to be store & printed in particular format. iOS has given NSDate for date and time related data handling and  NSDateFormatter can be used to give a date of NSDate object a visual form. 

Code

Current Date and Time is obtained by init method of NSDate.

NSDate *date = [[NSDate allocinit];

Create a NSDateFormatter for set the date format that is needed to print and get a NSString object from the date.

NSDateFormatter *dateFormatter = [[NSDateFormatter allocinit];

Use setDateFormat of NSDateFormatter to get a date format that is needed to display. This method get the required date format by using NSString parameter and returns nothing.  The method has been called on the object dateFormatter.

[dateFormatter setDateFormat:@"dd-MM-YYYY HH:mm:ss"];

Method signature for setDateFormat

- (void)setDateFormat:(NSString *)string

NSString *dateString = [dateFormatter stringFromDate:date];

Invoke stringFromDate on dateFormatter object to get the the date value of NSDate object in specified date format. This method consumes previously created date object and assign a NSString represent of the date on date object to dateString.

Method signature for stringFromDate

- (NSString *)stringFromDate:(NSDate *)date

Print the dateString using  NSLog();

NSLog(@"The Date: %@", dateString);

Complete Code

    NSDate *date = [[NSDate alloc] init];
    NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
    [dateFormatter setDateFormat:@"dd-MM-YYYY HH:mm:ss"];
    NSString *dateString = [dateFormatter stringFromDate:date];

    NSLog(@"The Date: %@", dateString);

Monday, March 24, 2014

Converting NSString to NSData and NSData to NSString

Description

Below code segment shows how to convert a NSString value to NSData and NSData value to NSString value. At the beginning, It create a NSString literal with the variable name "firstString" then value of "firstString" variable is taken as a way that can be assigned into NSData variable by using method [1]. The variable "firstString" is assigned with "nil" in order to show that the variable contains nothing. The value of the variable has printed to by using "NSLog". After the printing a NSString object is created with by using previously created NSData. Method [2] has been used. Then the "firstString" value is printed again with NSLog.

  1. - (NSData *)dataUsingEncoding:(NSStringEncoding)encoding
  2. - (instancetype)initWithData:(NSData *)data encoding:(NSStringEncoding)encoding


Code

    NSString *firstString = @"This is the string that is wanted to convert";
    
    NSData *dataFromString = [firstString dataUsingEncoding:NSUTF8StringEncoding];
    
    firstString = nil;
    
    NSLog(@"firstString (nil) = %@", firstString);
    
    firstString = [[NSString allocinitWithData:dataFromString encoding:NSUTF8StringEncoding];
    

    NSLog(@"firstString (!nil) = %@", firstString);

Result

2014-03-24 17:10:11.367 TestProject[3048:60b] firstString (nil) = (null)
2014-03-24 17:10:11.369 TestProject[3048:60b] firstString (!nil) = This is the string that is wanted to convert