iOS中的base64加密

#import <UIKit/UIKit.h>

 

@interface Base64String : NSObject

 

+ (NSString *)base64String:(NSString*)sourceString;

 

+ (NSString*)encodeBase64String:(NSString*)baseString;

 

+ (NSString*)base64Image:(UIImage*)image;

 

+ (UIImage*)encodebase64WithImage:(NSString*)baseSring;

 

@end

/88888888888888888888888分割线88888888888888888888888888/

 

 

#import "Base64String.h"

 

@implementation Base64String

//把字符串加密为base64字符串 

+ (NSString *)base64String:(NSString*)sourceString

{//判断字符串的长度是否小于等于0如果是,就返回空

    if (sourceString.length <=0) {

        return nil;

    }

    //把字符串转化为二进制流

    NSData * sourceData = [[NSData alloc] initWithData:[sourceString dataUsingEncoding:NSUTF8StringEncoding]];

    //把二进制流转化为base64字符串

    NSString * baseString = [sourceData base64EncodedStringWithOptions:NSDataBase64EncodingEndLineWithLineFeed];

 

    return baseString;

    

}

 

+ (NSString*)encodeBase64String:(NSString*)baseString

{

    if (baseString.length <= 0) {

        return  nil;

    }

    

    NSData * data = [[NSData alloc] initWithBase64EncodedString:baseString options:NSDataBase64DecodingIgnoreUnknownCharacters];

    

    return [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];

    

}

 

+ (NSString*)base64Image:(UIImage*)image

{

    if (!image) {

        return nil;

    }

    

    NSData * data =  UIImagePNGRepresentation(image);

    

    NSString * base64Str = [data base64EncodedStringWithOptions:NSDataBase64EncodingEndLineWithLineFeed];

    

    return base64Str;

    

}

 

+ (UIImage*)encodebase64WithImage:(NSString*)baseSring

{

    NSData * data = [[NSData alloc] initWithData:[baseSring dataUsingEncoding:NSUTF8StringEncoding]];

    

    NSData * myData = [[NSData alloc] initWithBase64EncodedData:data options:NSDataBase64DecodingIgnoreUnknownCharacters];

    return [UIImage imageWithData:myData];

    

}

 

 

@end

posted @ 2016-09-12 14:07  sujianbo  阅读(649)  评论(0编辑  收藏  举报