Мне нужны все функции file.renameTo в java, но без удаления исходного файла. Например: скажем, у меня есть файл report.doc, и я хочу создать файл report.xml без удаления report.doc. Кроме того, содержимое обоих файлов должно быть одинаковым. (Простая копия) Как мне это сделать?
Я знаю, что это может быть тривиально, но простой поиск не помог.
2 ответа
Для операций с файловой системой Apache Commons IO предоставляет полезные ярлыки.
Видеть:
Вы можете создать новый файл с тем же содержанием, что и оригинал.
Для этого используйте java NIO (Java 1.4 или новее):
private static void copy(File source, File destination) throws IOException {
long length = source.length();
FileChannel input = new FileInputStream(source).getChannel();
try {
FileChannel output = new FileOutputStream(destination).getChannel();
try {
for (long position = 0; position < length; ) {
position += input.transferTo(position, length-position, output);
}
} finally {
output.close();
}
} finally {
input.close();
}
}
См. ответы на этот вопрос для более
Похожие вопросы
Связанные вопросы
Новые вопросы
java
Java - это язык программирования высокого уровня. Используйте этот тег, если у вас возникли проблемы с использованием или пониманием самого языка. Этот тег редко используется отдельно и чаще всего используется вместе с [spring], [spring-boot], [jakarta-ee], [android], [javafx], [hadoop], [gradle] и [maven].