pdf如何解密文件(pdf密码强制解除方式)
程序员文章站
2023-12-03 13:31:58
这里使用的是文件读写流的时候进行异位算法,方法也比较简单。详细见代码,可以是任何文件,图片,pdf等;package inno320;import java.io.file;import java.i...
这里使用的是文件读写流的时候进行异位算法,方法也比较简单。
详细见代码,可以是任何文件,图片,pdf等;
package inno320; import java.io.file; import java.io.inputstream; import java.io.outputstream; import java.io.fileinputstream; import java.io.fileoutputstream; public class fileencanddec { private static final int numofencanddec = 0x99; // 加密解密秘钥 private static int dataoffile = 0; // 文件字节内容 public static void main(string[] args) { file srcfile = new file("g:\\zanshan.jpg"); // 初始文件 file encfile = new file("f:\\encfile.jpg"); // 加密文件 file decfile = new file("f:\\decfile.jpg"); // 解密文件 try { encfile(srcfile, encfile); // 加密操作 decfile(encfile,decfile); } catch (exception e) { e.printstacktrace(); } } private static void encfile(file srcfile, file encfile) throws exception { if (!srcfile.exists()) { system.out.println("source file not exixt"); return; } if (!encfile.exists()) { system.out.println("encrypt file created"); encfile.createnewfile(); } inputstream fis = new fileinputstream(srcfile); outputstream fos = new fileoutputstream(encfile); while ((dataoffile = fis.read()) > -1) { fos.write(dataoffile ^ numofencanddec); } fis.close(); fos.flush(); fos.close(); } private static void decfile(file encfile, file decfile) throws exception { if (!encfile.exists()) { system.out.println("encrypt file not exixt"); return; } if (!decfile.exists()) { system.out.println("decrypt file created"); decfile.createnewfile(); } inputstream fis = new fileinputstream(encfile); outputstream fos = new fileoutputstream(decfile); while ((dataoffile = fis.read()) > -1) { fos.write(dataoffile ^ numofencanddec); } fis.close(); fos.flush(); fos.close(); } }
中间为加密后的文件,无法在正常打开,右边为解密 的文件,这里的密钥可以自己定义