jiemi.java
来自「这个一个对文件进行解密的程序」· Java 代码 · 共 46 行
JAVA
46 行
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
import java.io.*;
import javax.swing.JOptionPane;
public class Jiemi {
public static void main(String[] args)throws IOException{
String secre=JOptionPane.showInputDialog(null,"文件已加密请输入您的密码来解密:");//获取解密的密钥
FileInputStream Input=new FileInputStream("加密后的文件.txt");//读取密文
byte [] x=new byte[300];
char[] m=new char[300];
Input.read(x);//将密文读取到x数组中,以便进行异或操作来解密
for(int k=0;x[k]!=0;k++)
{
m[k]=(char)x[k];
System.out.println(m[k]);//调试语句
}
char[] b =(secre+"****************************************************" +
"*****************************************************************" +
"*******************************************************************" +
"**************************************************************" +
"*************************************************").toCharArray();
//还原密钥
for (int i = 0; m[i]!='&';i++) {
m[i] = (char) (m[i] ^ b[i]);//用密钥和密文进行异或,用于解密
System.out.println(m[i]);//调试语句
if(m[i]=='&') break;
}
byte[] p=new byte[70];
char[] n=new char[70];
for(int i=0;m[i]!='&';){
n[i]=m[i];
p[i]=(byte)n[i];
i++;
}
FileOutputStream output=new FileOutputStream("加密后的文件.txt");
output.write(p);//保存解密后的原文
String secret1 = new String(n);
JOptionPane.showMessageDialog(null,secret1,"解密后的原文:",JOptionPane.QUESTION_MESSAGE);
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?