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加密解密文件的更多相关文章

  1. django删除表重建&修改用户密码&base64加密解密字符串&ps aux参数说明&各种Error例子

    1.django的queryset不支持负索引 AssertionError: Negative indexing is not supported. 2.django向前端JavaScript传递列 ...

  2. JS实现base64加密解密

    JS实现base64加密解密 转载自http://blog.csdn.net/fengzheng0306/archive/2006/04/25/676055.aspx 方法一: <HTML> ...

  3. 【代码笔记】iOS-3DES+Base64加密解密

    一,工程目录. 二,代码. RootViewController.m #import "RootViewController.h" #import "NSString+T ...

  4. 实现Base64加密解密

    using System; using System.Text;   namespace Common { /// <summary> /// 实现Base64加密解密 /// </ ...

  5. Java中使用BASE64加密&解密

    package com.bao.tools.encryption; import java.io.IOException; import org.junit.Test; import sun.misc ...

  6. Base64加密解密原理以及代码实现(VC++)

    Base64加密解密原理以及代码实现 转自:http://blog.csdn.net/jacky_dai/article/details/4698461 1. Base64使用A--Z,a--z,0- ...

  7. Java Base64 加密解密

    使用JDK的类 BASE64Decoder  BASE64Encoder package test; import sun.misc.BASE64Decoder; import sun.misc.BA ...

  8. php使用base64加密解密图片

    php使用base64加密解密图片的实例代码. 例子: <?php //文件名:base64.php $data="/9j/4AAQSkZJRgABAQAAAQABAAD/2wCEAB ...

  9. Base64加密解密

    /// <summary> /// 实现Base64加密解密 /// </summary> public sealed class Base64 { /// <summa ...

随机推荐

  1. Java ftp断点续传

    FtpTransFile类 import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundExcept ...

  2. python手记(30)

    #!/usr/bin/env python #-*- coding: utf-8 -*- import cv2 import numpy as np fn="test3.png" ...

  3. 14.5.5.1 An InnoDB Deadlock Example 一个InnoDB 死锁实例

    14.5.5.1 An InnoDB Deadlock Example 一个InnoDB 死锁实例 下面的例子演示了一个错误可以发生当一个lock 请求会导致一个死锁,例子设计2个客户端,A和B: J ...

  4. PuTTY DSA签名远程缓冲区溢出漏洞(CVE-2013-4207)

    漏洞版本: Simon Tatham PuTTY 0.52 - 0.63 漏洞描述: BUGTRAQ ID: 61649 CVE(CAN) ID: CVE-2013-4207 PuTTY是Window ...

  5. jira 无法停止启动解决方案

    Diagnosis To assess whether the service is still running, run ps -A | grep jira. Resolution To kill ...

  6. 【转】压缩Virtualbox的vdi文件

    原文网址:http://i.rexdf.org/blog/2014/10/06/ya-suo-virtualboxde-vdiwen-jian/ 问题实际上比较简单,我在Arch Linux杂记中给出 ...

  7. 495. Kids and Prizes

    http://acm.sgu.ru/problem.php?contest=0&problem=495 学习:当一条路走不通,换一种对象考虑,还有考虑对立面. 495. Kids and Pr ...

  8. (转载)ubuntu安装pyton-pip问题解决

    一.问题描述 root@ubuntu:/home/chao# apt-get install python-pip 正在读取软件包列表... 完成 正在分析软件包的依赖关系树 正在读取状态信息... ...

  9. stand meeting

    “每日站立会议”.每日站立会议有一些具体的指导原则: 会议准时开始. (没有特殊情况10点开始) 欢迎所有人参加,但只允许有实际工作的团队成员发言. 不论团队规模大小,会议被限制在15分钟.(每个人2 ...

  10. 386. Lexicographical Numbers

    用DFS来做,先弄开头是1的,再弄开头是1的里面开头是1的,再开头是1的里面开头是1的里的开头是1的,再... 是吧-- 比N大了BREAK就行. 注意第一个循环是1-9,往后的循环是0-9. pub ...