Создание файлов в C ++ - PullRequest
       13

Создание файлов в C ++

54 голосов
/ 25 января 2009

Я хочу создать файл с использованием C ++, но я не знаю, как это сделать. Например, я хочу создать текстовый файл с именем Hello.txt.

Кто-нибудь может мне помочь?

Ответы [ 6 ]

91 голосов
/ 25 января 2009

Один из способов сделать это - создать экземпляр класса ofstream и использовать его для записи в ваш файл. Вот ссылка на веб-сайт с примером кода и дополнительной информацией о стандартных инструментах, доступных в большинстве реализаций C ++:

ссылка на поток

Для полноты вот пример кода:

// using ofstream constructors.
#include <iostream>
#include <fstream>  

std::ofstream outfile ("test.txt");

outfile << "my text here!" << std::endl;

outfile.close();

Вы хотите использовать std :: endl для завершения ваших строк. Альтернативой является использование символа \ n. Эти две вещи разные, std :: endl очищает буфер и записывает ваш вывод немедленно, в то время как '\ n' позволяет выходному файлу поместить весь ваш вывод в буфер и, возможно, записать его позже.

13 голосов
/ 13 марта 2017

Сделайте это с потоком файлов. Когда std::ofstream закрывается, файл создается. Мне лично нравится следующий код, потому что OP только просит создать файл, а не писать в нем:

#include <fstream>

int main()
{
    std::ofstream file { "Hello.txt" };
    // Hello.txt has been created here
}

Временная переменная file уничтожается сразу после ее создания, поэтому поток закрывается и, таким образом, файл создается.

11 голосов
/ 25 января 2009
#include <iostream>
#include <fstream>

int main() {
  std::ofstream o("Hello.txt");

  o << "Hello, World\n" << std::endl;

  return 0;
}
3 голосов
/ 25 мая 2018

Вот мое решение:

#include <fstream>

int main()
{
    std::ofstream ("Hello.txt");
    return 0;
}

Файл (Hello.txt) создается даже без имени ofstream, и в этом отличие от ответа мистера Бойетоса.

2 голосов
/ 29 сентября 2009
#include <iostream>
#include <fstream>
#include <string>
using namespace std;

string filename = "/tmp/filename.txt";

int main() {
  std::ofstream o(filename.c_str());

  o << "Hello, World\n" << std::endl;

  return 0;
}

Это то, что я должен был сделать, чтобы использовать переменную для имени файла вместо обычной строки.

0 голосов
/ 16 марта 2019
/*I am working with turbo c++ compiler so namespace std is not used by me.Also i am familiar with turbo.*/

#include<iostream.h>
#include<iomanip.h>
#include<conio.h>
#include<fstream.h> //required while dealing with files
void main ()
{
clrscr();
ofstream fout; //object created **fout**
fout.open("your desired file name + extension");
fout<<"contents to be written inside the file"<<endl;
fout.close();
getch();
} 

После запуска программы файл будет создан внутри папки bin в самой папке вашего компилятора.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...