base64加密解密文件
1 //字符串加密
-(void)demo1 {
//普通的 8 bit二进制数据
NSString *str = @"hello world!";
//将字符串转换成二进制数据
NSData *data = [str dataUsingEncoding:NSUTF8StringEncoding]; //base64 加密后的二进制数据
NSData *base64Data = [data base64EncodedDataWithOptions:];
//base64 加密后的字符串
NSString *base64String = [data base64EncodedStringWithOptions:]; [data writeToFile:@"/Users/zhufeng/Desktop/data" atomically:YES];
[base64Data writeToFile:@"/Users/zhufeng/Desktop/base64Data" atomically:YES];
// [base64String writeToFile:@"/Users/zhufeng/Desktop/base64String" atomically:YES];
//输出
NSLog(@"data : %@",data);
NSLog(@"base64Data : %@",base64Data);
NSLog(@"base64String : %@",base64String);
} //加密文件信息
-(void)demo2 {
//1.得到文件的二进制数据
NSData *data = [NSData dataWithContentsOfFile:@"/Users/zhufeng/Desktop/wode.jpg"]; //2.将得到的文件二进制数据进行 base64加密
NSData *base64Data = [data base64EncodedDataWithOptions:]; //3.存储加密之后的数据
[base64Data writeToFile:@"/Users/zhufeng/Desktop/wodezhaopian" atomically:YES];
} //解密文件信息
-(void)demo3 {
//1.获取base64加密的二进制数据
NSData *base64Data = [NSData dataWithContentsOfFile:@"/Users/zhufeng/Desktop/wodezhaopian"]; //2.将 base64 加密的二进制数据转换成普通二进制数据
NSData *data = [[NSData alloc] initWithBase64EncodedData:base64Data options:]; //3.存储 解密后的文件
[data writeToFile:@"/Users/zhufeng/Desktop/我的解密照片.gif" atomically:YES];
} //影片加密
-(void)demo4 {
//1.得到文件的二进制数据
NSData *data = [NSData dataWithContentsOfFile:@"/Users/zhufeng/Desktop/X游记之D圣归来.Monkey.King.Hero.is.Back.mp4"]; //2.将得到的文件二进制数据进行 base64加密
NSData *base64Data = [data base64EncodedDataWithOptions:]; //3.存储加密之后的数据
[base64Data writeToFile:@"/Users/zhufeng/Desktop/X游记之D圣归来.mp4" atomically:YES];
}
//影片解密
-(void)demo5 {
//1.获取加密后的base64文件的二进制数据
NSData *base64Data = [NSData dataWithContentsOfFile:@"/Users/zhufeng/Desktop/X游记之D圣归来.mp4"]; //2.将 base64 加密的文件转换成普通的二进制文件
NSData *data = [[NSData alloc] initWithBase64EncodedData:base64Data options:]; //3.存储解密后的文件
[data writeToFile:@"/Users/zhufeng/Desktop/X游记之D圣归来 解密.mp4" atomically:YES]; }
base64加密解密文件的更多相关文章
- django删除表重建&修改用户密码&base64加密解密字符串&ps aux参数说明&各种Error例子
1.django的queryset不支持负索引 AssertionError: Negative indexing is not supported. 2.django向前端JavaScript传递列 ...
- JS实现base64加密解密
JS实现base64加密解密 转载自http://blog.csdn.net/fengzheng0306/archive/2006/04/25/676055.aspx 方法一: <HTML> ...
- 【代码笔记】iOS-3DES+Base64加密解密
一,工程目录. 二,代码. RootViewController.m #import "RootViewController.h" #import "NSString+T ...
- 实现Base64加密解密
using System; using System.Text; namespace Common { /// <summary> /// 实现Base64加密解密 /// </ ...
- Java中使用BASE64加密&解密
package com.bao.tools.encryption; import java.io.IOException; import org.junit.Test; import sun.misc ...
- Base64加密解密原理以及代码实现(VC++)
Base64加密解密原理以及代码实现 转自:http://blog.csdn.net/jacky_dai/article/details/4698461 1. Base64使用A--Z,a--z,0- ...
- Java Base64 加密解密
使用JDK的类 BASE64Decoder BASE64Encoder package test; import sun.misc.BASE64Decoder; import sun.misc.BA ...
- php使用base64加密解密图片
php使用base64加密解密图片的实例代码. 例子: <?php //文件名:base64.php $data="/9j/4AAQSkZJRgABAQAAAQABAAD/2wCEAB ...
- Base64加密解密
/// <summary> /// 实现Base64加密解密 /// </summary> public sealed class Base64 { /// <summa ...
随机推荐
- Android程序安装后在模拟器上不显示,并且控制台显示The launch will only sync the application package on the device!
初学安卓,今天写了一个小例子,可是eclipse控制台却提示 No Launcher activity found! The launch will only sync the application ...
- 利用ROWID快速执行关联更新
一.构造相关表P1,P2 create table p1(id int,name char(10)); create table p2(id int,name char(10)); 二.批量插入数据 ...
- -_-#【HTML】同一个标签页打开
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...
- 【转】在Ubuntu下编译Android源码并运行Emulator
原文网址:http://www.mcuos.com/thread-4553-1-1.html 建立编译环境 1.在VirtualBox上安装Ubuntu 2.安装JDK $ sudo apt-ge ...
- 水题:HDU 5112 A Curious Matt
Description There is a curious man called Matt. One day, Matt's best friend Ted is wandering on the ...
- Ajax的简单小例子
1.首先下载ajax.dll,一个百度一下都有下载的!自行查找. 2.把ajax.dll导入到工程.右键工程-->添加引用--->浏览,找到下载好的ajax.dll文件,点击确定,这时候在 ...
- 判断iis是否已经安装
判断iis是否已经安装? 访问http://127.0.0.1 能得到正确页面的是已经安装. 活者查看控制面板-添加删除程序-windows组件-internet信息服务(IIS)前面的没有打勾则没有 ...
- Robot Framework安装
Robot Framework(中文站/社交化知识社区,源码)是一款Python编写的通用开源功能测试自动化框架,以作验收测试和验收测试驱动开发(ATDD),它是一种使用表格测试数据语法的关键字驱动的 ...
- unity3d 制造自己的水体water effect(二)
前篇:unity3d 制造自己的水体water effect(一) 曲面细分:Unity3d 使用DX11的曲面细分 PBR: 讲求基本算法 Unity3d 基于物理渲染Physically-Base ...
- Palindrome - URAL - 1297(求回文串)
题目大意:RT 分析:后缀数组求回文串,不得不说确实比较麻烦,尤其是再用线段数进行查询,需要注意的细节地方比较多,比赛实用性不高......不过练练手还是可以的. 线段数+后缀数组代码如下: ...