1. 程式人生 > >簡單的文件讀寫---文件簡單的加密、解密

簡單的文件讀寫---文件簡單的加密、解密

directory runt turn encrypt r+ spa style static cep

文件加密

package encryption;

import java.io.File;

import java.io.IOException;
import java.io.RandomAccessFile;


public class Encryption {
    //文件加密
    public static void Encrypt(File file){
        if(file == null){
            return;
        }
        try {
            @SuppressWarnings("resource")
            RandomAccessFile rsf 
= new RandomAccessFile(file, "rw"); byte[] bs = new byte[10]; rsf.read(bs); byte[] b = new byte[(int) (file.length()-10)]; rsf.read(b); rsf.seek(0); rsf.write(b); rsf.write (bs); } catch (Exception e) { e.printStackTrace();
throw new RuntimeException("讀寫錯誤",e); } } public static void main(String[] args) throws IOException { String path = "E:\\要加密的文件"; File file = new File(path); if(file.isDirectory()){ String[] files = file.list(); for(int i=0;i<=files.length-1;i++){
//獲取加密文件 File f = new File(path+File.separator+files[i]); if(!f.isDirectory()){ Encrypt(f); } } } } }

文件解密



package decrypt;

import java.io.File;

import java.io.IOException;
import java.io.RandomAccessFile;


public class Decrypt {
    //文件解密
    public static void Encrypt(File file){
        if(file == null){
            return;
        }
        try {
            @SuppressWarnings("resource")
            RandomAccessFile rsf = new RandomAccessFile(file, "rw");
            byte[] b = new byte[(int) (file.length()-10)];
            rsf.read(b);
            byte[] bs = new byte[10];
            rsf.read(bs);

            rsf.seek(0);
            rsf.write(bs);
            rsf.write(b);
        } catch (Exception e) {
            e.printStackTrace();
            throw new RuntimeException("讀寫錯誤",e);
        }
        
    }
    public static void main(String[] args) throws IOException {
        String path = "E:\\要解密的文件";
        File file = new File(path);
        if(file.isDirectory()){
            String[] files = file.list();
            for(int i=0;i<=files.length-1;i++){
                //獲取解密文件
                File f = new File(path+File.separator+files[i]);
                if(!f.isDirectory()){
                    Encrypt(f);
                }
            }
        }
    }
}

 

簡單的文件讀寫---文件簡單的加密、解密