user3007459
user3007459

Reputation: 113

How to decode string with Base64 in iPhone

I am getting encoded string.string contains '=' sign at last. I am trying to decode it,using Base64 but its not decode properly.Here is my code:

NSData *decodedData = [[NSData alloc] initWithBase64EncodedString:string options:0];
NSString *decodedString = [[NSString alloc] initWithData:decodedData encoding:NSUTF8StringEncoding];
NSLog(@"decodedString %@", decodedString);

but, decodedString is nil.Please help me.Thanks in advance.

Upvotes: 2

Views: 2026

Answers (2)

Luis Mejías
Luis Mejías

Reputation: 301

The only logical explanation I can see is that the string that you are decoding is empty because that is the correct way to decode a base64 encoded.

Upvotes: 1

Ajay
Ajay

Reputation: 1622

May be you are encoding it wrong. Try this code, its working fine and tested:

NSString *string = @"user3007459=";
NSString *base64EncodedString = [[string dataUsingEncoding:NSUTF8StringEncoding] base64EncodedStringWithOptions:0];
NSData *decodedData = [[NSData alloc] initWithBase64EncodedString:base64EncodedString options:0];
NSString *decodedString = [[NSString alloc] initWithData:decodedData encoding:NSUTF8StringEncoding];
NSLog(@"decodedString %@", decodedString);

Upvotes: 0

Related Questions