Автор Артур Катрук задал вопрос в разделе Другие языки и технологии
Вопрос пр С++. Подскажите, пожалуйста, как удалить файл на С++? и получил лучший ответ
Ответ от Ra[гуру]
#include <cstdio>
int main() {
char filename[] = "file.txt";
if (remove(filename) == 0) {
printf("Файл %s удален\n", filename);
} else {
perror("Ошибка");
}
}
Совсем в стиле С++:
#include <string>
#include <cstdio>
#include <iostream>
using namespace std;
int main() {
string filename = "file.txt";
if (remove(filename.c_str()) == 0) {
cout << "Файл " << filename << " удален\n";
} else {
cerr << "Ошибка: " << strerror(errno) << '\n';
}
}
#include <cstdio>
int main() {
char filename[] = "file.txt";
if (remove(filename) == 0) {
printf("Файл %s удален\n", filename);
} else {
perror("Ошибка");
}
}
Совсем в стиле С++:
#include <string>
#include <cstdio>
#include <iostream>
using namespace std;
int main() {
string filename = "file.txt";
if (remove(filename.c_str()) == 0) {
cout << "Файл " << filename << " удален\n";
} else {
cerr << "Ошибка: " << strerror(errno) << '\n';
}
}
ЗЫ:
Господин Богомолов не стесняется копировать чужие ответы, ведь первоначально у него было:
if (rename("file.txt") == 0) {
что является копией моего ответа и вообще ошибка.
Увидев мой ответ, он быстро исправил свой. Но что еще интересней, увидев, что для имени файла в моем коде есть переменная, он быстро поправил соответствующим образом свой код, увидев strerror() он тут же вставил его в свой пример. Особенно порадовало его: "Другой вариант: ", который суть моего "Совсем в стиле С++", но которого первоначально вообще не было.
Так держать, господин Богомолов. Вы раз за разом доказываете, что вы настоящий христианин. Но ничего, ведь потом всегда можно .
программа Unlocker
Если пишете консольное приложение Win32, то так: #include <iostream> // Для std::cerr. #include <cstdio> // Для remove(). int main () { char f[] = "C:\\file.txt"; if (remove(f) == 0) { std::cout << "Ф