我需要一些创建文件的帮助
我在最后几个小时尝试使用RandomAccessFile并尝试实现下一个逻辑:
我寻找一个简单的代码,他更喜欢使用RandomAccessFile 我只是不知道如何解决这几个步骤..
编辑: 好的,所以我附上了这部分代码 我的问题是,我无法理解什么是正确的步骤.. 文件没有被创建,我不知道如何做“切换”
File tempFile = null;
String[] fileArray = null;
RandomAccessFile rafTemp = null;
try {
fileArray = FileTools.splitFileNameAndExtension(this.file);
tempFile = File.createTempFile(fileArray[0], "." + fileArray[1],
this.file); // also tried in the 3rd parameter this.file.getParentFile() still not working.
rafTemp = new RandomAccessFile(tempFile, "rw");
rafTemp.writeBytes("temp file content");
tempFile.renameTo(this.file);
} catch (IOException ex) {
ex.printStackTrace();
} finally {
rafTemp.close();
}
答案 0 :(得分:4)
try {
// Create temp file.
File temp = File.createTempFile("TempFileName", ".tmp", new File("/"));
// Delete temp file when program exits.
temp.deleteOnExit();
// Write to temp file
BufferedWriter out = new BufferedWriter(new FileWriter(temp));
out.write("Some temp file content");
out.close();
// Original file
File orig = new File("/orig.txt");
// Copy the contents from temp to original file
FileChannel src = new FileInputStream(temp).getChannel();
FileChannel dest = new FileOutputStream(orig).getChannel();
dest.transferFrom(src, 0, src.size());
} catch (IOException e) { // Handle exceptions here}
答案 1 :(得分:1)
你可以直接覆盖文件。或者按照
进行操作使用diff name
删除旧文件
重命名新文件