簡單的文件讀寫---文件簡單的加密、解密
阿新 • • 發佈:2017-09-25
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); } } } } }
簡單的文件讀寫---文件簡單的加密、解密