Как написать и вывести файл, используя аргументы командной строки

0

Я пытаюсь использовать аргументы командной строки, чтобы передать строку текста в выходной файл. Я знаю, что вы можете сделать это с помощью входного файла. Я использую unix для запуска программы, и я ее компилирую и запускаю следующим образом:

g++ -o program program.C 
./program

Итак, как мне запустить программу, чтобы написать строку текста "Что-то вроде этого" в выходной файл out.txt.

  • 2
    Вы спрашиваете, как записать в файл изнутри программы, или как перенаправить вывод из него?
  • 0
    Хм я бы хотел перенаправить вывод с него.
Показать ещё 1 комментарий
Теги:
command-line-arguments

1 ответ

1

Поэтому, если ваша командная строка выглядит как ./program <filename> <text_to_append> следующее будет работать:

#include <fstream>

int main(int argc, char * argv [])
{
    // first argument is program name
    if (argc == 3)
    {
        std::ofstream ofs;
        ofs.open (argv[1], std::ofstream::out | std::ofstream::app);  
        ofs << argv[2];
        ofs.close();
    }

    return 0;
}

Ещё вопросы

Сообщество Overcoder
Наверх
Меню