1 //字符串加密
 2 -(void)demo1 {
 3     //普通的 8 bit二进制数据
 4     NSString *str = @"hello world!";
 5     //将字符串转换成二进制数据
 6     NSData *data = [str dataUsingEncoding:NSUTF8StringEncoding];
 7
 8     //base64 加密后的二进制数据
 9     NSData *base64Data = [data base64EncodedDataWithOptions:0];
10     //base64 加密后的字符串
11     NSString *base64String = [data base64EncodedStringWithOptions:0];
12
13     [data writeToFile:@"/Users/zhufeng/Desktop/data" atomically:YES];
14     [base64Data writeToFile:@"/Users/zhufeng/Desktop/base64Data" atomically:YES];
15 //    [base64String writeToFile:@"/Users/zhufeng/Desktop/base64String" atomically:YES];
16     //输出
17     NSLog(@"data : %@",data);
18     NSLog(@"base64Data : %@",base64Data);
19     NSLog(@"base64String : %@",base64String);
20 }
21
22 //加密文件信息
23 -(void)demo2 {
24     //1.得到文件的二进制数据
25     NSData *data = [NSData dataWithContentsOfFile:@"/Users/zhufeng/Desktop/wode.jpg"];
26
27     //2.将得到的文件二进制数据进行 base64加密
28     NSData *base64Data = [data base64EncodedDataWithOptions:0];
29
30     //3.存储加密之后的数据
31     [base64Data writeToFile:@"/Users/zhufeng/Desktop/wodezhaopian" atomically:YES];
32 }
33
34 //解密文件信息
35 -(void)demo3 {
36     //1.获取base64加密的二进制数据
37     NSData *base64Data = [NSData dataWithContentsOfFile:@"/Users/zhufeng/Desktop/wodezhaopian"];
38
39     //2.将 base64 加密的二进制数据转换成普通二进制数据
40     NSData *data = [[NSData alloc] initWithBase64EncodedData:base64Data options:0];
41
42     //3.存储 解密后的文件
43     [data writeToFile:@"/Users/zhufeng/Desktop/我的解密照片.gif" atomically:YES];
44 }
45
46
47 //影片加密
48 -(void)demo4 {
49     //1.得到文件的二进制数据
50     NSData *data = [NSData dataWithContentsOfFile:@"/Users/zhufeng/Desktop/X游记之D圣归来.Monkey.King.Hero.is.Back.mp4"];
51
52     //2.将得到的文件二进制数据进行 base64加密
53     NSData *base64Data = [data base64EncodedDataWithOptions:0];
54
55     //3.存储加密之后的数据
56     [base64Data writeToFile:@"/Users/zhufeng/Desktop/X游记之D圣归来.mp4" atomically:YES];
57 }
58 //影片解密
59 -(void)demo5 {
60     //1.获取加密后的base64文件的二进制数据
61     NSData *base64Data = [NSData dataWithContentsOfFile:@"/Users/zhufeng/Desktop/X游记之D圣归来.mp4"];
62
63     //2.将 base64 加密的文件转换成普通的二进制文件
64     NSData *data = [[NSData alloc] initWithBase64EncodedData:base64Data options:0];
65
66     //3.存储解密后的文件
67     [data writeToFile:@"/Users/zhufeng/Desktop/X游记之D圣归来 解密.mp4" atomically:YES];
68
69 }

转载于:https://www.cnblogs.com/zhufengshibei/p/4977189.html

base64加密解密文件相关推荐

  1. ImageUtils.java:图片处理工具类[裁剪/图片水印/文字水印/缩放补白/Base64加密解密]

    用到的jar包: commons-beanutils-1.8.0.jar commons-codec-1.10.jar package com.zhenzhigu.commons.util;   im ...

  2. asp php base64 加密解密,base64加密解密_php base64_decode 解码方法

    base64加密解密_php base64_decode 解码方法 观点1: php实现base64加密解密 在PHP中我们可以直接使用PHP自带的函数 base64_encode() 和 base6 ...

  3. javascript base64加密解密

    javascript base64加密解密 <!DOCTYPE HTML> <html> <head> <meta charset="utf-8&q ...

  4. chrome 控制台 base64加密解密

    1.视界 2. 背景 因为在客户机器,要查询base64的解密信息,但是因为内网无法使用网络,只能拷贝软件本想查询插件,后来发现谷歌支持解密 3.方法 在chrome控制台上可以直接使用函数做base ...

  5. 在线base64加密解密工具

    在线base64加密解密工具 在线base64加密解密工具 本工具支持对字符串进行base64加密和解密(严格来说,只能算是字符串编码),纯客户端计算,数据不会上传到服务器中,请放心使用. https ...

  6. C 使用异或(xor)加密/解密文件

    C 使用异或(XOR)加密/解密文件 之前写过一篇<php 使用异或(XOR)加密/解密文件>,但php执行的速度很慢,因此这次使用C重写,速度有很大的提高. xor_encrypt.c ...

  7. 在线BASE64加密解密、UrlEncode编码/解码、native/ascii在线转换工具 -toolfk程序员工具网

    本文要推荐的[ToolFk]是一款程序员经常使用的线上免费测试工具箱,ToolFk 特色是专注于程序员日常的开发工具,不用安装任何软件,只要把内容贴上按一个执行按钮,就能获取到想要的内容结果.Tool ...

  8. js怎么实现对html代码加密解密,JS实现Base64加密解密

    JavaScript实现Base64加密解密.Base64与其说是加密算法不如说是方便数据传输而生的数据转换手段. 测试代码:html> test .resource_enc, .resourc ...

  9. Java base64加密解密 两种实现方式

    1.为什么要使用Base 64 Base 64主要用途不是加密,而是把一些二进制数转成普通字符,方便在网络上传输. 由于一些二进制字符在传输协议中属于 控制字符,不能直接传送,所以需要转换一下才可以. ...

最新文章

  1. Hadoop平台日志结构
  2. #翻译# 关于 Java 性能方面的 9 个谬论
  3. HDU 4162 Shape Number(最小表示法)
  4. C#学习之用迭代器实现枚举器
  5. 如何对计算属性进行修改_「计算摄影」计算机如何学会自动地进行图像美学增强?...
  6. IDEA 中tomcat上面有个x 而且找不到配置tomcat的选项
  7. 大改革,GNOME 3.x将直接跳到GNOME 40
  8. SpringBoot登录登出切面开发
  9. Spring 实践 -拾遗
  10. android自定义静态广播失效,自定义的静态广播没有作用怎么处理
  11. jmeter 加密解密_AES加密的安全问题
  12. java中打开特定编码的文本_指定编码写入和读取文件内容
  13. matlab 命令集结(1)
  14. linux上验证cudnn是否安装成功_Ubuntu 18.04安装CUDA(版本10.2)和cuDNN
  15. CentOS 上MySQL报错Can't connect to local Mysql server through socket '/tmp/mysql.scok' (111)
  16. SpringBoot集成海康威视Linux版本
  17. 计算机系统结构安全检测,计算机软件安全检测法综述
  18. SecureCRT 连接ubuntu操作系统(解决Ubuntu密钥交换失败的问题)
  19. PageRank实践-博客园用户PageRank排名
  20. 基于Springboot + Thymeleaf 的招聘网站(源代码+数据库) 026

热门文章

  1. 【Springboot + Vue 视频播放web项目】解决视频播放只有声音没有画面
  2. Android java面试题收集
  3. 搞定 Redis 数据存储原理,别只会 set、get 了
  4. 2022-2028年全球柔性衬底行业收入年复合增长率CAGR为 10.8%
  5. 2025年建筑业产值、增加值等规模指标继续保持全国前列
  6. 一套亿级用户的IM架构技术干货(上篇):整体架构、服务拆分等
  7. 智能识别系统---基于颜色直方图的相似目标查找(图像去噪,MeanShift匹配目标)
  8. 网络协议 TCP 数字编号和重传机制
  9. 如何确保大模型追求“正确”的目标?丨AI安全与对齐圆桌回顾
  10. UE4 C++纯slate开发沙盒游戏(一) 菜单部分