CStdioFile myFile;
CString filen = "file.txt";
CFileException fileException;
CString buf;
myFile.Open(filen, CFile::modeCreate | CFile::modeReadWrite, &fileException );
for (int i = 0; i < m_List.GetCount(); i++)
{
m_List.GetText(i, buf);
myFile.WriteString(buf);
}
myFile.Close();
Запись в файл из ЛистБокса
CStdioFile myFile;
CString filen = "file.txt";
CFileException fileException;
CString buf;
myFile.Open(filen, CFile::modeCreate | CFile::modeReadWrite, &fileException );
for (int i = 0; i < m_List.GetCount(); i++)
{
buf = m_List.GetItemData(i);
myFile.WriteString(buf);
}
myFile.Close();
в результате получается ошибка приведения типов DWORD_PTR в LPCTSTR в строке myFile.WriteString(buf);
не могу понять как преобразовать типы чтобы все Ок было. Подскажите пожалуйста.
Код:
Если же надо преобразовать в LPCTSTR значение, возвращаемое CListBox::GetItemData, то сделать это можно так:
Код:
buf = reinterpret_cast<LPCTSTR>(m_List.GetItemData(i));
Код:
for (int i = 0; i < m_List.GetCount(); i++)
{
m_List.GetText(i, buf);
myFile.WriteString(buf);
}
myFile.Close();
{
m_List.GetText(i, buf);
myFile.WriteString(buf);
}
myFile.Close();
спасибо огромное!! Все получается. Только весь текст заносится в файл без разделения на строки.
Как сделать перенос строки?
Можно ли написать
Код:
for (int i = 0; i < m_List.GetCount(); i++)
{
m_List.GetText(i, buf);
buf = buf + "\r"; // или buf = buf + "\r\n";
myFile.WriteString(buf);
}
myFile.Close();
{
m_List.GetText(i, buf);
buf = buf + "\r"; // или buf = buf + "\r\n";
myFile.WriteString(buf);
}
myFile.Close();
Цитата:
Originally posted by avatara
спасибо огромное!! Все получается. Только весь текст заносится в файл без разделения на строки.
Как сделать перенос строки?
Можно ли написать
Код:
for (int i = 0; i < m_List.GetCount(); i++)
{
m_List.GetText(i, buf);
myFile.WriteString(buf);
}
myFile.Close();
{
m_List.GetText(i, buf);
myFile.WriteString(buf);
}
myFile.Close();
спасибо огромное!! Все получается. Только весь текст заносится в файл без разделения на строки.
Как сделать перенос строки?
Можно ли написать
Код:
for (int i = 0; i < m_List.GetCount(); i++)
{
m_List.GetText(i, buf);
buf = buf + "\r"; // или buf = buf + "\r\n";
myFile.WriteString(buf);
}
myFile.Close();
{
m_List.GetText(i, buf);
buf = buf + "\r"; // или buf = buf + "\r\n";
myFile.WriteString(buf);
}
myFile.Close();
все .. разобрался надо сделать так
buf = buf + "\n";
Еще раз ОГРОМНОЕ СПАСИБО!
Цитата:
Originally posted by avatara
все .. разобрался надо сделать так
buf = buf + "\n";
Еще раз ОГРОМНОЕ СПАСИБО!
все .. разобрался надо сделать так
buf = buf + "\n";
Еще раз ОГРОМНОЕ СПАСИБО!
Один недостаток - запись в случае больших объемов данных будет идти медленно