Версия для печати
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум на Исходниках.RU > C/C++: Прочее > Открытие и сохранение файло


Автор: Sandello 28.02.01, 14:49
ПАмАгИтЕ!!! ПЛЗ!!! Нужен source-пример открытия файла и вывода его содержимого в Edit Box. И еще пример сохранения текста из поля в файл.
З.Ы. Я только начинающий

Автор: purpe 28.02.01, 14:53
в чём начинаешь-то ? в API или в MFC ?

Автор: Elephant 28.02.01, 22:49
Сбрось мне на e-mail подробное описание того, что тебе нужно. Обязательно отвечу!

Автор: Sandello 01.03.01, 13:15
Начинаю на MFC.

Автор: purpe 01.03.01, 14:20
Ж)
вот использую вот такой сурогат:
чтение из файла в переменную CString:
void CMainWnd::LoadServerStrings(void)
{
CFile handler;
CFileException e;
char* pFileName = "mainchat.txt";
void* ptrBuffer;
UINT nBytesRead;
if(!handler.Open(pFileName1, CFile::modeRead | CFile::typeBinary, &e)) {}
else {
nBytesRead = handler.GetLength();
ptrBuffer = malloc(nBytesRead);
handler.Read(ptrBuffer, nBytesRead);
handler.Close();
m_strKillList = (char *)ptrBuffer;
free(ptrBuffer);
}
}
придварительно в классе CMainWnd объявляю переменную (в разделе public):
CString m_strKillList;
после этого достаточно вызвать функцию LoadServerStrings(); и переменная m_strKillList будет содержать в себе содержимое файла mainchat.txt
Соответственно записываю в файл следующим образом (например содержимое этой же переменной) :
void CMainWnd::SaveServerStrings(void)
{
CFile handler;
CFileException e;
char* pFileName = "mainchat.txt";
handler.Open(pFileName, CFile::modeCreate | CFile::modeWrite, &e);
UINT nBytesRead = m_strKillList.GetLength();
handler.Write(m_strKillList, nBytesRead);
handler.Close();
}
если mainchat.txt уже существовал, то всё его содержимое будет заменено содержимым переменной m_strKillList, если этого файла ранее не существовало, то он будет содан и в него будет записана переменная m_strKillList

Автор: purpe 01.03.01, 14:39
едем дальше :)
допустим если ты создал редактором ресурсов VC++ в форме или в диалоговом окне тестовое поле с идентификатором, например IDC_TEXT1, то тебе необходимо в функции-обработчике DoDataExchange твоего класса формы или дилогового окна добавить следующую строчечку:
DDX_Text(pDX, IDC_TEXT1, m_strKillList);
она указывает компилятору, что с твоим текстовым окошечком связана переменная m_strKillList.
теперь после вызова в этом классе функции:
UpdateData(FALSE);
содержимое переменной m_strKillList переместится в твоё текстовое окошко.
и наоборот, если вызвать функцию:
UpdateData(TRUE);
то содержимое текстового окошка переместится в переменную m_strKillList.
Ну а дальше ты эту переменную можешь записать в файл или считать из файла.
вот такая вот простая арифметика :)

Автор: Sandello 05.03.01, 11:28
Спасибо Всем!

Powered by Invision Power Board (https://www.invisionboard.com)
© Invision Power Services (https://www.invisionpower.com)