我有一个叫data.bin的英国皇家空军和一个叫temp.bin的临时英国皇家空军。
data = new RandomAccessFile("data.bin","rws");
temp = new RandomAccessFile("temp.bin","rws");临时文件基本上是data.bin文件,但我修改了其中的信息。那么,一旦我完成了对临时文件的修改,如何将temp.bin的名称更改为data.bin并删除旧的data.bin呢?
我看过一些关于使用.renameTo()和其他东西重命名文件的事情,但这确实适用于RandomAccessFile。我找不到任何像这样的方法来处理RAF
发布于 2013-05-15 10:43:12
RandomAccessFile不是用来替换File类的。
它被设计成只允许或多或少地阅读一篇文章。
请使用File类进行重命名。
发布于 2013-05-15 10:53:31
关闭RAF并使用java.nio.file.Files.move重命名临时文件。File.renameTo也有回头路。如果它不能重命名文件,您将永远不会知道原因,因为它只返回true或false。如果失败,Files.move会抛出IOException。
发布于 2013-08-05 08:40:09
我也有同样的问题。我做了这样的事情:
data.close();
temp.close();
File tempfile = new File("c:/.../temp.bin");
File datafile = new File("c:/.../data.bin");
tempfile.renameTo(datafile);欲了解更多信息,请访问:http://www.tutorialspoint.com/java/io/file_renameto.htm
https://stackoverflow.com/questions/16555896
复制相似问题