我使用以下代码从我的Windows计算机上的驱动器中读取:
try {
File diskRoot = new File("\\\\.\\"
+ drives.get(selectedIndex).getPath());
byte[] content;
try (RandomAccessFile diskAccess = new RandomAccessFile(diskRoot, "r")) {
content = new byte[1024];
//diskAccess.seek(10);
diskAccess.readFully(content);
}
drives.clear();
try (FileOutputStream fos = new FileOutputStream("export.bin")) {
fos.write(content);
} catch (FileNotFoundException ex) {
LOG.log(Level.SEVERE, null, ex);
} catch (IOException ex) {
LOG.log(Level.SEVERE, null, ex);
}
}
它工作正常,但我需要跳转到指定的扇区,所以根据我应该使用的文档寻求。遗憾的是,出于某种原因,当我尝试寻求它时抛出异常,我无法弄清楚原因。
SEVERE:null java.io.IOException:参数不正确 java.io.RandomAccessFile.seek0(Native Method)at java.io.RandomAccessFile.seek(RandomAccessFile.java:557)
有什么想法吗?