我想通过java编程故意破坏文件。我听说你可以读取文件字节并附加任意随机字节,但我还不知道如何实际实现它。 您能否提供一段代码 ..
是否可以对文件内容进行加密,以便文件仍可以打开,但内部内容不再可读
答案 0 :(得分:0)
一个简单的RandomAccessFile
加扰器就是这样:
private static final String READ_WRITE = "rw";
private static final Random random = new Random();
public static void scramble(String filePath, int scrambledByteCount) throws IOException{
RandomAccessFile file = new RandomAccessFile(filePath, READ_WRITE);
long fileLength = file.getLength();
for(int count = 0; count < scrambledByteCount; count++) {
long nextPosition = random.nextLong(fileLength-1);
file.seek(nextPosition);
int scrambleByte = random.nextInt(255) - 128;
file.write(scrambleByte);
}
file.close();
}
RandomAccessFile
正是它的声音,一个可以在任何位置读取和写入的文件。您可以致电randomAccessFile.seek(long position)
选择排名。
Random
也是听起来像是一个随机数,字节等的工厂。
所以基本上
A)在任何位置打开文件进行读/写
B)得到一个随机位置,得到一个随机字节,将随机字节写入随机位置
C)重复B)scrambledByteCount
次