1. 程式人生 > >用java實現文件加密解密

用java實現文件加密解密

文件加密

import java.io.*;

public class ToSecret {
    public static void main(String[] args) throws Exception {
        FileInputStream fis = new FileInputStream("你想加密的檔名稱Secret1.txt");
		FileOutputStream fos= new FileOutputStream("你想加密之後的檔名稱Secret2.txt");
		int ch;
		System.out.println("請輸入密碼:");
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        String key = br.readLine();
		while((ch=fis.read())!=-1){
			ch=ch^Integer.valueOf(key);
			fos.write(ch);
		}
	}
}

文件解密(只要兩次輸入的金鑰相同就可以啦)

import java.io.*;

public class ToSecret {
    public static void main(String[] args) throws Exception {
        FileInputStream fis = new FileInputStream("你想加密的檔名稱Secret2.txt");
		FileOutputStream fos= new FileOutputStream("你想加密之後的檔名稱Secret3.txt");
		int ch;
		System.out.println("請輸入密碼:");
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        String key = br.readLine();
		while((ch=fis.read())!=-1){
			ch=ch^Integer.valueOf(key);
			fos.write(ch);
		}
	}
}

下面是效果圖哦

Secret1.txt:

在這裡插入圖片描述 Secret2.txt

在這裡插入圖片描述

Secret3.txt

在這裡插入圖片描述

通過以上方法就簡單的實現了文件的加密,是不是好神奇的樣子哈哈哈~~~ 其實我們只是利用了一個 簡單的位運算子 " ^ " 而已,因為異或運算子與同一個變數異或兩次等於它本身~~~小夥伴可以自己試一下