Anti-Antidote Ответов: 1

[C++] где ofstream сохраняет?


У меня есть программа, которая собирает пользовательский ввод и выводит его в файл в определенном формате. Я не могу показаться, чтобы выяснить, где он выводит на. Я использую Code:: Blocks с g++.

Что я уже пробовал:

Я просмотрел все файлы, но не могу найти выходной файл.

[no name]

И ты почему-то думаешь, что мы узнаем? Мы не можем сказать вам, что происходит в вашем коде.

1 Ответов

Рейтинг:
5

Afzaal Ahmad Zeeshan

Когда вы открываете поток в файл, вы передаете местоположение файла (включая имя) этому объекту. Как правило, передается только имя файла (например, _ofstream.open("file.txt")), который создает файл в том же каталоге, где находится программа. В большинстве случаев вам потребуется пройти полный путь. Так например если следующая ваша программа,

#include <iostream>
#include <fstream>

using namespace std;

int main() {
   ofstream _filestream;
   _filestream.open("file.txt");

   _filestream << "Hello world!" << endl;
}

Тогда вы получите новый файл созданный, внутри того же каталога (потому что путь не определен с каталогом, куда он должен идти и т. д.). В противном случае вам может потребоваться пройти полный путь. Что было бы,

1. "C:\MyData\File.txt" в Windows-при условии, что предоставлено достаточно разрешений.
2. "/home/afzaal/Documents/file.txt" в средах Linux-разрешения может быть спросил.

Прочтите код. В этом коде есть ответ. Для получения дополнительной информации, пожалуйста, прочтите: потока - Справочник по c++ [^], ofstream:: Open-C++ Reference[^]. Open-это функция, ответственная за открытие потоков, в которые записываются данные.