今天被安排一个工作,工作内容是要读取记事本中的内容。内容是二进制格式存储的。其中涉及到一个读取银行卡号,并且卡号的后 8 位用 des 进行了加密。我在读取文件的时候首先用百度到的资料
InputStreamReader read;
read = new InputStreamReader(new FileInputStream(file), encoding);
BufferedReader bufferedReader = new BufferedReader(read);
用这种方式读文件。读取其他内容都没问题。
可是就在我要解密被 des 加密的内容的时候怎么都无法解密出来。我用了很多种方式,一直认为是我解密的方式错了。还在找解密 des 的方式。就这样浪费了非常多的时间。领导也给了我一个解密 des 的工具,使用之,任然失败。报告领导,领导说:“你要自己研究啊!”。此时内心是崩溃的。在脑袋难以集中精神的情况下,突然想到会不会是读取文件的时候上诉方法并没有按照二进制方式读取。于是上网在搜索了二进制读取文件的方法。
DataInputStream dis;
dis = new DataInputStream(new FileInputStream(file));
尝试下,就成功了,成功了,功了,了,,。
诶,只能怪自己,把自己钻到牛角尖里面去了。
回到宿舍,打开电脑,想想刚才的错。如果我把需要解密的部分拷出来,复制到 String 内容中,在进行解密,还是可以解密的。所以说有时候错了,思路不要往死里钻。
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于