Show how to use xtd::io::file_info::replace method.
#include <xtd/io/file>
#include <xtd/io/file_info>
#include <xtd/console>
#include <xtd/startup>
class program {
public:
static auto main() {
try {
auto original_file = "test.txt"_s;
auto file_to_replace = "test2.txt"_s;
auto backup_of_file_to_replace = "test2.txt.bak"_s;
console::write_line(
"Move the contents of " + original_file +
" into " + file_to_replace +
", delete " + original_file +
", and create a backup of " + file_to_replace +
".");
replace_file(original_file, file_to_replace, backup_of_file_to_replace);
} else
console::write_line(
"Either the file {0} or {1} doesn't exist.", original_file, file_to_replace);
}
}
static void replace_file(
const ustring& file_to_move_and_delete,
const ustring& file_to_replace,
const ustring& backup_of_file_to_replace) {
auto f_info =
file_info {file_to_move_and_delete};
f_info.
replace(file_to_replace, backup_of_file_to_replace);
}
};