
22.12.2008, 21:16
|
|
студент
Регистрация: 30.07.2007
Сообщений: 800
С нами:
9885926
Репутация:
1188
|
|
Код:
void COpenDialog::OnOpen()
{
CString fname; //Переменная для хранения имени файла
CFile file; //обьект класса CFile
//char ch[1024]; //Буффер для чтения данных из файла
char ch; //Буффер для чтения данных из файла
CString ch1;
if(!OpenRead) //Если OpenRead=false то показываем диалог открытия файлов
{
CFileDialog fDialog(TRUE);
fDialog.DoModal();
m_EditOpen.SetWindowText(fDialog.GetPathName());
m_bOpen.SetWindowText("Read");
OpenRead = true;
}
else
{
m_EditOpen.GetWindowText(fname); //Получаем имя файла
if(!file.Open(fname, CFile::modeRead, NULL)) //Открываем его
{
AfxMessageBox("Cannot open file");
return;
}
int dlina;
dlina=::GetFileSize(file,0);
file.Read(&ch1, dlina); //Читаем 1024 байт
m_EditText.SetWindowText(ch1);
file.Close(); //Закрываем файл
m_bOpen.SetWindowText("Open");//Меняем текст кнопки
OpenRead = false;
}
}
вот вроде так только при открытии еррор. хз.... не могу понять в чем трабла...
--------------------EDIT---------------------
вот если кому нить понадобится, рабочий код. Большое спасибо 2 groupby за помощь.
Код:
void COpenDialog::OnOpen()
{
CString fname; //Переменная для хранения имени файла
CFile file; //обьект класса CFile
if(!OpenRead) //Если OpenRead=false то показываем диалог открытия файлов
{
CFileDialog fDialog(TRUE);
fDialog.DoModal();
m_EditOpen.SetWindowText(fDialog.GetPathName());
m_bOpen.SetWindowText("Read");
OpenRead = true;
}
else
{
m_EditOpen.GetWindowText(fname); //Получаем имя файла
if(!file.Open(fname, CFile::modeRead, NULL)) //Открываем его
{
AfxMessageBox("Cannot open file");
return;
}
int len = file.GetLength();
char* ch = new char[len];
file.Read(ch, len); //Читаем len байт
m_EditText.SetWindowText(ch);
file.Close(); //Закрываем файл
m_bOpen.SetWindowText("Open");//Меняем текст кнопки
penRead = false;
}
}
--------------------EDIT---------------------
Последний раз редактировалось NetSter; 26.12.2008 в 04:32..
Причина: решение проблемы.
|
|
|