`

(转)java安全删除某个文件

 
阅读更多

import java.io.*;
import java.nio.*;
import java.nio.channels.*;
import java.security.SecureRandom;

public class SecureDelete {

   public static void main(String[] args) throws IOException {
   
     File file = new File(args[0]);
     if (file.exists()) {
     SecureRandom random = new SecureRandom();
     RandomAccessFile raf = new RandomAccessFile(file, "rw");
     FileChannel channel = raf.getChannel();
     MappedByteBuffer buffer
       = channel.map(FileChannel.MapMode.READ_WRITE, 0, raf.length());
     // overwrite with zeros
     while (buffer.hasRemaining()) {
       buffer.put((byte) 0);
     }
     buffer.force();
     buffer.rewind();
     // overwrite with ones
     while (buffer.hasRemaining()) {
       buffer.put((byte) 0xFF);
     }
     buffer.force();
     buffer.rewind();
     // overwrite with random data; one byte at a time
     byte[] data = new byte[1];
     while (buffer.hasRemaining()) {
       random.nextBytes(data);
       buffer.put(data[0]);
     }
     buffer.force();
     file.delete();
     }
  }
}
//该片段来自于http://www.codesnippet.cn/detail/03122012774.html

  其中用到了NIO,其实就是用混乱的数据重新填充下文件
分享到:
评论

相关推荐

    java删除某个文件夹

    java递归删除整个文件夹,可以文件夹中所有的文件和子文件夹

    java 删除文件夹下内容

    java 删除指定文件夹下所有文件,使用例子 DeleteFile.delAllFile(path); path的值是D:/profile/123/

    JAVA获取FTP文件列表

    JAVA获取FTP文件列表,功能齐全。包括:链接到服务器,上传文件到FTP服务器,从FTP服务器上下载文件并返回下载文件长度,返回FTP目录下的文件列表,删除FTP上的文件及目录,关闭链接。

    java编写的ftp文件实时监控下载上传

    用java语言编写的ftp小工具,可以按指定时间监控ftp服务器,把服务器指定目录内新产生的文件或者文件夹下载到本地指定文件夹,下载后删除数据。 也可以监控本地文件夹,把文件夹内新产生的文件或者文件夹整体上传到...

    删除指定天数日期之前的文件

    里面用了vbs对指定某个时间之前的文件进行批量删除。

    java通过api方式操作Hadoop

    该资源是java通过api的方式来操作hadoop,主要有以下操作: 一.文件操作 1.上传本地文件到hadood 2.在hadoop中新建文件,并写入 ...1.查找某个文件在HDFS集群中位置 2.获取HDFS集群上所有名称节点信息

    java实现删除excel内容之间空行

    java实现删除excel内容之间空行,需要导入皮包。

    java 简单的对d盘文件及文件夹进行操作如移动删除等

    简单的对D盘文件进行各种操作

    Java读取json文件并对json数据进行读取、添加、删除与修改操作

    开发过程中经常会遇到json数据的处理,而单独对json数据进行增删改并不方便,尤其是Geojson文件的处理,通过对网络资料的整理总结,下面介绍Java语言方法对json数据进行读取、添加、删除与修改操作。

    Java实现的模糊匹配某文件夹下的文件并删除功能示例

    主要介绍了Java实现的模糊匹配某文件夹下的文件并删除功能,涉及java针对目录与文件的遍历、匹配、判断、删除等相关操作技巧,需要的朋友可以参考下

    Java安全性编程实例(徐迎晓)

    # 网上下载了一个程序,运行时会不会删除我的文件,或将某些文件泄漏给黑客? # 编写了一个Java Applet,如何让其能访问硬盘上的文件? # 主要内容 # 本章介绍基于代码来源的程序的安全运行,可以基于运行时代码在...

    java获取读取未读邮件旧未读邮件最新邮件删除邮件指定读取指定邮件下载附件内容包括附件包含javamailjar

    于是我自己查API写了一个,读取未读邮件,读取最新邮件,读取指定邮件,删除邮件等等功能。不过我这个是有一些个性化,可以适应修改一下。里面包含了jar包,放进去就能运行,不过需要配置一下基本信息,POP地址,...

    删除某项目下的一些文件或文件夹

    1、一个删除某个文件夹下所有指定的文件或文件夹,包括子文件夹下的内容的工具。 2、可以一次删除多个指定的文件或文件夹名称,用“,”号隔开。 3、主要用途:如有时下载或拷的代码中包含.SVN文件夹,而手动去删除....

    java jdk实列宝典 光盘源代码

    读写Blob数据,blob数据常以二进制形式存储比较大的文件数据,如图片、视频文件等,本文介绍如何往数据库中读写blob数据,BlobData.java; 使用ResultSet更新数据库,UpdateWithResultSet.java; 使用RowSet,....

    遍历删除包含某字符的文件

    扫描某个目录下包含某些字符的 html 或者 hum 文件,进行文件删除

    java大作业,实现学生信息增删改查

    在Web页面上实现添加一个学生记录,删除某个学生记录,修改某个学生记录,和按照姓名,学号进行查询。 要求列表输出学生记录,必须实现分页功能。必须使用XML文件来进行存储,必须使用DOM4J来实现XML操作。 XML...

    java实现读取、删除文件夹下的文件

    本文给大家分享的是java实现读取、删除文件夹下的文件,其中File.delete()用于删除“某个文件或者空目录”!所以要删除某个目录及其中的所有文件和子目录,要进行递归删除,有需要的小伙伴可以参考下。

    android 删除图片视频代码

    android 删除图片视频代码,比较全面的代码,可以按照里面的方法从而也可以删除其他特殊的文件。。

    27天成为Java大神

    java语言:跨平台性,安全性 James Gosling:java之父 2:常用控制台命令 盘符 冒号 回车:进入到某个盘下 cd 单级目录 cd 多级目录 dir 显示目录下的所有文件 md 创建目录 rd 删除目录 cls 清屏 exit ...

    java 面试题 总结

    JAVA相关基础知识 1、面向对象的特征有哪些方面 1.抽象: 抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面。抽象并不打算了解全部问题,而只是选择其中的一部分,暂时不用...

Global site tag (gtag.js) - Google Analytics