Я пытаюсь записать данные консоли в отдельный текстовый файл в cpp. Кто-нибудь поможет мне с образцом кода.Как написать вывод консоли в текстовый файл в cpp?
ответ
Существуют различные способы сделать это. Вы можете перенаправить его из командной строки с programname > out.txt
. Или вы можете использовать freopen("out.txt","w",stdout);
в начале вашей программы.
Это работало хорошо для меня. Но внезапно выходы консоли CMD были полностью невидимы. Когда я удаляю эту строку, выходы cmd были видны назад –
Если вы хотите создать дочерний процесс и перенаправить его вывод, который вы могли бы сделать что-то вроде этого:
FILE* filePtr = popen("mycmd");
FILE* outputPtr = fopen("myfile.txt");
if(filePtr && outputPtr) {
char tmp;
while((tmp = getc(filePtr)) != EOF)
putc(tmp, outputPtr);
pclose(filePtr);
fclose(outputPtr);
}
, относящихся только к pthreads ... – shoosh
Если вы хотите написать от вашего собственного процесса, я хотел бы предложить простой метод печати
void print(const string str, ostream & output)
{
output << str;
}
Тогда вы можете позвонить
print("Print this", cout);
для консольного вывода, или
ofstream filestream("filename.out");
print("Print this", filestream);
написать в файл "filename.out". Конечно, вы получаете больше всего, если print
- это метод класса, который выводит всю необходимую вам информацию о конкретном объекте, и таким образом вы можете легко выводить результат на разные потоки.
Функция 'print', которую вы определили, практически не имеет преимущества. Вы можете так же легко написать 'cout <<" Распечатать это ";' для первого примера и 'filestream <<" Распечатать это ";" во втором примере. Если 'print' добавить дополнительную логику (возможно, написание метки времени или возможно, запись на стандартный вывод и файл), нет никакой пользы для такой функции. –
bbtrb писал:
недействительной печати (Const строки, ул ostream & выхода) { выхода < < ул; }
Лучше, чем это, конечно
ostream& output(ostream& out, string str) {out << str; return out;}
так, что вы даже можете иметь манипулировали выходной поток, возвращаемый функцией.
ответ smerrimans должен помочь вам.
Существует также возможность реализовать свой собственный streambuf и использовать его с std :: cout и std :: cerr для хранения распечаток в файл вместо печати на консоль. Я сделал это некоторое время назад, чтобы перенаправить распечатки на какие-то вращающиеся журналы с отметками времени.
Вам нужно будет немного почитать о том, как это работает, и this book помог мне разобраться.
Если это не то, что вы после этого немного переборщило.
- 1. Как написать вывод консоли в текстовый файл в vb.net
- 2. Как перенаправить вывод консоли в текстовый файл
- 3. написать вывод консоли в текстовый файл с помощью jsoup
- 4. Как написать вывод консоли в txt-файл
- 5. Вывести весь вывод консоли в текстовый файл
- 6. Как написать текстовый вывод приложения C# в текстовый файл
- 7. Как сохранить непрерывный вывод консоли в текстовый файл в C#?
- 8. Как сохранить вывод консоли в текстовый файл в определенном каталоге?
- 9. Не удается записать вывод в текстовый файл в программе cpp
- 10. Как написать вывод в текстовый файл в C++ по сценарию
- 11. Java: Как сохранить вывод консоли в текстовый файл?
- 12. Как написать окончательный вывод Hadoop Reducer в текстовый файл?
- 13. Как написать вывод «java -version» в текстовый файл?
- 14. Как написать вывод консоли Mule в текстовом файле
- 15. Как перенаправить вывод nosetests в текстовый файл?
- 16. Консольный вывод в текстовый файл
- 17. В Python можно написать вывод генераторов (context_diff) в текстовый файл?
- 18. Написать вывод в файл
- 19. Вывод Java в текстовый файл?
- 20. Как написать текстовый файл
- 21. Как написать текстовый файл
- 22. не удается записать вывод консоли в текстовый файл
- 23. Напишите вывод консоли на несколько прогонов в текстовый файл
- 24. Вывод вывода консоли Java в текстовый файл внутри eclipse
- 25. Как написать исключения в текстовый файл? (JAVA)
- 26. Как перенаправить вывод программы в текстовый файл
- 27. Как сохранить вывод в текстовый файл
- 28. Как записать данные консоли в текстовый файл на C++?
- 29. как написать консольный вывод в файл в с
- 30. как написать таблицу словаря в текстовый файл?
данные консоли какого процесса? ваш собственный процесс? какой-нибудь другой процесс, который вы создаете? – shoosh
Что такое «данные консоли»? Как выглядит ваш текущий подход? – Philipp
Любой, кто ищет ответ, ищет ответ user11977. Это правильный. –