加密文件引入IO流

以前用C做了一个加密文件的小工具,很有成就感。

那么JAVA要怎么做呢。

1|0有关API

连接点进去,着重理解各自的子类父类、基本原理
下文默认已了解。

2|0字节与字符

要加密肯定是直接操作字节了。

但我们先看看JAVA常用的字符读入方式。

  • ISR 桥接 FIP (用BFR包装提速)

    • BufferedReader in = new BufferedReader(new InputStreamReader(new FileInputStream("test.in")));
  • 包装类FlieReader (继承自ISR)

    • FileReader in = new FileReader("test.in");

两个方式本质上是一样的,都是先通过 InputStream (这里是子类 FIP) 把字节读下来, 然后通过桥接器 InputStreamReader 转字节为字符。FR 只是把这个过程包装起来(源码很显然了)。

那么, 要读字节,直接用 FIP 即可。

FileInputStream fip = new FileInputStream("test.in");

3|0迫真加密

当然,这里就不用什么高阶加密算法了,直接来个全部加 5 的加密!。

  • 初始文件

    遇到困难睡大觉
  • 加密加五

    public static void solve() throws IOException { File f = new File("C:\\Users\\lyh\\Desktop\\before2023\\test.in"); FileInputStream fip = new FileInputStream(f); byte[] b = fip.readAllBytes();//得到一串字节码,-128 ~ 127 for (int i = 0; i < b.length; i++) b[i] += 5;//逆天加密 fip.close(); FileOutputStream fop = new FileOutputStream(f); fop.write(b); fop.close(); }
  • 加密文件

    佧郝努芍写锅铭
  • 解密减五

    public static void solve() throws IOException { File f = new File("C:\\Users\\lyh\\Desktop\\before2023\\test.in"); FileInputStream fip = new FileInputStream(f); byte[] b = fip.readAllBytes();//得到一串字节码,-128 ~ 127 for (int i = 0; i < b.length; i++) b[i] -= 5;//逆天解密 fip.close(); FileOutputStream fop = new FileOutputStream(f); fop.write(b); fop.close(); }
  • 解密文件

    遇到困难睡大觉

__EOF__

本文作者Kdlyh
本文链接https://www.cnblogs.com/kdlyh/p/17950403.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角推荐一下。您的鼓励是博主的最大动力!
posted @   加固文明幻景  阅读(31)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 一文读懂知识蒸馏
· 终于写完轮子一部分:tcp代理 了,记录一下
点击右上角即可分享
微信分享提示