base64圖片和字符串編解碼詳細(xì)過程
base64圖片編碼過程
-
1、讀取圖片路徑
NSString *path = [[NSBundle mainBundle] pathForResource:imageName ofType:nil];
-
2啸胧、獲取文件的二進(jìn)制
NSData *data = [NSData dataWithContentsOfFile:path];
-
3幔虏、編碼->通過字符串接收
NSString *base64String = [data base64EncodedStringWithOptions:0]
-
4、獲取沙盒路徑+文件路徑(儲(chǔ)存為222.txt文件)
NSString *cachePath = [NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES) lastObject]; NSString *filePath = [cachePath stringByAppendingPathComponent:@"222.txt"];
-
5陷谱、寫入沙盒
[base64String writeToFile:filePath atomically:YES encoding:NSUTF8StringEncoding error:NULL];
base64圖片解碼過程
-
1烟逊、從沙盒獲取圖片路徑
NSString *cachePath = [NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES) lastObject]; NSString *filePath = [cachePath stringByAppendingPathComponent:@"222.txt"];
-
2铺根、獲取文件的二進(jìn)制
NSData *base64Data = [NSData dataWithContentsOfFile:filePath]; NSData *data = [[NSData alloc] initWithBase64EncodedData:base64Data options:0];
-
3、加載圖片
self.imageView.image = [UIImage imageWithData:data];
圖片編解碼演示結(jié)束
base64字符串編碼
-
將字符串(String)轉(zhuǎn)換為二進(jìn)制data類型數(shù)據(jù)
NSData *data = [String dataUsingEncoding:NSUTF8StringEncoding];
-
把轉(zhuǎn)換后的二進(jìn)制數(shù)據(jù)進(jìn)行編碼
NSString *base64String = [data base64EncodedStringWithOptions:0];
base64字符串解碼
-
把base64編碼的字符串(String)轉(zhuǎn)換為data類型
NSData *data = [[NSData alloc]initWithBase64EncodedString:base64String options:0];
-
把data類型的數(shù)據(jù)還原成字符串類型
NSString *string = [[NSString alloc]initWithData:data encoding:NSUTF8StringEncoding];
字符串編解碼演示結(jié)束
轉(zhuǎn)載須注明出處详瑞,謝謝臣缀!
http://www.reibang.com/p/3ab36ad3a18a