使用的是异或运算符,通过读取到每个字节,然后每个字节通过异或运算符进行加密,解密则再执行一次

  /*** 文件加密key值,* 其实是对文件的字节 进行 异或 操作,* 两次异或 得到 原始文件 --》 上传异或一次,下载异或一次。*/private static final char ENCRYPTED_KEY = '9';上传文件时:           // 文件 加密存储 操作fileEnc(file, newFile);
下载文件时:// 文件 解密获取 操作 (异或)  -- 已输出到 响应流fileDec(file, response);/*** 文件 加密存储 操作 (异或)** @param file 上传文件* @param newFile 新文件*/private void fileEnc(MultipartFile file, File newFile) {try (OutputStream os = new FileOutputStream(newFile);InputStream ins = file.getInputStream()) {fileXor(ins, os);} catch (Exception e) {logger.error("文件【{}】加密存储 操作,出现异常,", file.getOriginalFilename(), e);}}/*** 文件 解密获取 操作 (异或)** @param file     原始文件(已加密)* @param response 待输出文件*/private void fileDec(File file, HttpServletResponse response) {try (InputStream ins = new FileInputStream(file);OutputStream os = response.getOutputStream()) {fileXor(ins, os);} catch (Exception e) {logger.error("文件下载操作【文件输出】,出现异常,", e);}}/*** 文件 异或 操作*/private void fileXor(InputStream ins, OutputStream os) throws IOException {int length;byte[] buffer = new byte[2048];// 每次读2048个字节然后遍历每个字节进行位异或运算while ((length = ins.read(buffer, 0, 2048)) != -1) {for (int i = 0; i < buffer.length; i++) {// 通过异或运算某个数字或字符串buffer[i] = (byte) (buffer[i] ^ ENCRYPTED_KEY);}os.write(buffer, 0, length);}}

使用java对文件内容加密相关推荐

  1. java AES文件流加密

    java AES文件流加密 文章转载自:https://www.cnblogs.com/gne-hwz/p/14736496.html java工具类-对称加密算法AES 加密文件流 工具类出自jdk ...

  2. Json文件内容加密

    Json文件内容加密 RAS 1.配置公私钥 PUBLIC_KEY: MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC9ikrLxa/cgLZXQugBQFhdxCPQm ...

  3. JAVA读取文件内容,按格式输出文件

    JAVA读取文件内容,按格式输出文件记录 一.我们要做什么? 1.本次我们来使用java将文件按格式输出. 二.我们为什么要做? 1.在使用jmeter脚本时候有个动态参数的文件,需要读取多个参数,人 ...

  4. java 下载文件内容为空_java 下载文件 内容为空。

    Java日志使用slf4j 配置log4j后,有日志文件 但日志文件内容为空 SLF4J的全称是Simple Logging Facade for Java,即简单日志门面. SLF4J并不是具体的日 ...

  5. Java输入输出之文件字符IO流之文件内容加密

    目录 任务描述 相关知识 FileReader (文件字符输入流) FileReader 的构造方法 FileReader 的方法 FileWriter (文件字符输出流) FileWriter 构造 ...

  6. Java实现文件的加密与解密

    转载自:https://www.cnblogs.com/tgyf/p/4676878.html 先对文件与加密的相关知识做一个极为简单的科普(知道的可以跳过). 文件与字串 A.文件的操作流程一般为: ...

  7. java压缩文件并加密,发送到邮箱

    日常记录 目标,我们需要把文件进行压缩 并进行加密设置密码,并发送到指定的邮箱,这是需求 首先把工具类贴出来 我们需要导入一个jar包 winzipaes-1.0.1.jar 上传了一下,告诉已经存在 ...

  8. Java读取文件内容,返回字符串

    利用cn.hutool工具包内的工具类FileReader(文件读取器),可实现多种文件读取操作. 以下代码实现了读取文件内容,并返回字符串(包括换行符).该操作支持多种文件格式,比如txt.html ...

  9. java 读取文件内容 实例_Java 实例 – 读取文件内容 - Java 基础教程

    Java 实例 以下实例演示了使用 readLine() 方法来读取文件 test.log 内容,其中 test.log 文件内容为: 本站 www.runoob.com java 代码如下: Mai ...

最新文章

  1. 7、斐波那契数列、跳台阶、变态跳台阶、矩形覆盖------------剑指offer系列
  2. linux命令速查手册_值得收藏!Linux系统常用命令速查手册
  3. 《C++编程惯用法——高级程序员常用方法和技巧》——2.9 静态对象的构造
  4. 机器学习算法与Python实践之(二)支持向量机
  5. org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): dao.UserDao.selectU
  6. JAVA 1.2(原生数据类型 Primitive Data Type)
  7. 开源特训营 - Lesson 4 - 如何运营社区
  8. cv2.cornerHarris()详解 python+OpenCV 中的 Harris 角点检测
  9. jquery点击按钮显示和隐藏div
  10. java 回溯_java 实现迷宫回溯算法示例详解
  11. java 反射机制 在structs2_Java面试题之Struts2
  12. 爬虫库之BeautifulSoup学习(三)
  13. android AChartEnginee讲解之源码框架解读
  14. php如何查看端口有没被占用,如何查看某个端口被谁占用
  15. 钉钉日志范文100篇_关于公司各岗位钉钉日志撰写标准
  16. 决策树注意事项和参数调节
  17. P1108 低价购买(DP)
  18. webuploader 实现图片批量上传功能附实例代码
  19. HEIF HEVC 你知道多少?
  20. Day663.大佬学习经验分享 -Java业务开发常见错误

热门文章

  1. 海面电磁散射MATLAB程序,matlab 电磁散射特性计算
  2. java中时间的转换相关问题整理
  3. shell脚本之IP计算器
  4. 数据库设计中的英文术语表
  5. 服务器提取用户信息,获取客户端和服务器信息
  6. maven私服deploy-405错误
  7. 软件测试面试过程中的一些回答思路及技巧,学会了稳过
  8. 被开发者和合作商抛弃 Android难现昨日辉煌
  9. 【董天一】IPFS的竞争对手们(一)
  10. TPT又一次重量级更新——TPT16使嵌入式测试变得更加轻松