#include <fstream>
using namespace std;
Вывод в обычный текстовый файл(log)
надо просто выводить в лог-файл строки.
Проект - Windows Application(MFC)
Пробовал ofstream. Компилятор не знает, что это такое.
Хотя подключал
#include <fstream>
Пробовал CFile. Но для метода Write необходим массив типа BYTE.
Пришлось посимвольно переводить строку(CString) в BYTE-массив.
Может можно как нибудь по-другому(по-проще).
В смысле, дал строку вывести в файл или чего-нибудь похожее.
Благодарю за просмотр и помощь:) :) :)
Цитата: EuGenius
...
Пробовал ofstream. Компилятор не знает, что это такое.
Хотя подключал
#include <fstream>
...
Пробовал ofstream. Компилятор не знает, что это такое.
Хотя подключал
#include <fstream>
...
Так тоже не работает?
Код:
FILE* File = fopen(FileName, "wb");
fwrite(&SomeData, 1, sizeof(SomeData), File);
...
fclose(File);
Код:
// Обновление переменных
UpdateData(true);
// Если текста нет - выход
if(m_View.IsEmpty())
{
MessageBox("Text is not found", "Warning", MB_ICONINFORMATION);
return;
}
// Обьект файлового диалога
CFileDialog SaveAsDialog(false, "txt", NULL,
OFN_PATHMUSTEXIST |
OFN_HIDEREADONLY |
OFN_OVERWRITEPROMPT,
"Text Files (*.txt)|*.txt||");
// Отображение файлового диалога
if(SaveAsDialog.DoModal() == IDOK)
{
// Создание файла по заданному пути и открытие
// его на запись в двоичном режиме
CStdioFile fSaveAs(SaveAsDialog.GetPathName(),
CFile::modeCreate |
CFile::modeWrite |
CFile::typeBinary);
// Сохранение текста в файл
fSaveAs.WriteString(m_View);
// Сохранение пути к файлу
m_FilePath = SaveAsDialog.GetPathName();
// Сброс флага модификации текста
m_Edit.SetModify(false);
// Закрытие файла
fSaveAs.Close();
}
UpdateData(true);
// Если текста нет - выход
if(m_View.IsEmpty())
{
MessageBox("Text is not found", "Warning", MB_ICONINFORMATION);
return;
}
// Обьект файлового диалога
CFileDialog SaveAsDialog(false, "txt", NULL,
OFN_PATHMUSTEXIST |
OFN_HIDEREADONLY |
OFN_OVERWRITEPROMPT,
"Text Files (*.txt)|*.txt||");
// Отображение файлового диалога
if(SaveAsDialog.DoModal() == IDOK)
{
// Создание файла по заданному пути и открытие
// его на запись в двоичном режиме
CStdioFile fSaveAs(SaveAsDialog.GetPathName(),
CFile::modeCreate |
CFile::modeWrite |
CFile::typeBinary);
// Сохранение текста в файл
fSaveAs.WriteString(m_View);
// Сохранение пути к файлу
m_FilePath = SaveAsDialog.GetPathName();
// Сброс флага модификации текста
m_Edit.SetModify(false);
// Закрытие файла
fSaveAs.Close();
}
Вытаскиваеш из ToolBox на диалоговое окно CEdit . Обьявляешь переменные m_Edit - контрольная типа CEdit , m_View - контрольная
типа CString ( value ),m_FilePath - типа CString путь к файлу ,
далее вводишь в текстовом поле текст , назымаешь кпопку и открывается файловый диалог , вводишь путь к новому файлу ( он будет
создан ):) Не забудь для текстового поля поставить нужные свойства
(properties) multiline,want return и т.д.Переменые особенно для CEdit
лучше обьявляй через Wizard , чтоб не запутаться .Все .Это в Visual Studio2003.
Цитата: Lerkin
Так тоже не работает?
Код:
#include <fstream>
using namespace std;
using namespace std;
Спасибо. Получилось.
Согласен - сглупил.
Тема закрыта