我正在尝试将文件从一个位置复制到另一个位置。从源复制到目标时,目标文件需要当前日期时间。如何使目标文件的日期与源文件的日期相同。
FileInputStream source = new FileInputStream("D:\\test\\test.txt");
OutputStream target = new FileOutputStream("D:\\test.txt");
byte[] buffer = new byte[source.available()];
source.read(buffer);
target.write(buffer);
source.close();
target.close();`
这由java.io.File
类提供。您需要先创建它的一个实例,然后将其传递给流:
File input = new File("D:\\test\\test.txt");
File output = new File("D:\\test.txt");
try( FileInputStream source = new FileInputStream(input);
OutputStream target = new FileOutputStream(output)){
byte[] buffer = new byte[source.available()];
source.read(buffer);
target.write(buffer);
}
long modified = input.lastModified();
output.setLastModified(modified);
BTW:我假设您至少使用Java 7,所以我将代码更改为使用try-with-resources功能。强烈建议使用此方法,因为如果出现异常,它还会处理关闭资源的问题。