Итак, исходные данные:
1) SDI-приложение;
2) Базовый класс CView;
3) Произвольный текстовой файл.
Задача:
Организовать чтение файла в CStringArray.
Почему именно туда? Потому что потом придется ковырять каждую строчку с целью добавления HTML-тегов. Построчно получится быстрее.
Так вот, проблема состоит в чтении строк файла в переменную CString для последующего занесения каждой строки в CStringArray[i].
Для начала я читаю файл:
BOOL CtextprobeDoc::OnOpenDocument(LPCTSTR lpszPathName)
{
if (!CDocument::OnOpenDocument(lpszPathName))
return FALSE;
// TODO: Add your specialized creation code here
CFile file(lpszPathName, CFile::modeRead);
...
Далее — узнаем размер файла:
m_FileSize = file.GetLength();
Потом надо будет создавать массив:
...
m_FileContent[i].Add(m_String); //где m_String - это очередная строчка, прочитанная из файла,
//а m_FileContent - переменная типа CStringArray.
...
А вот как прочитать файл построчно — непонятно. Облазил весь форум, но ничего путного не нашел.
Понятно, что можно было бы воспользоваться CEditView, но редактировать текст не надо — только вывести на экран.
Здравствуйте, Moloch, Вы писали:
Можнопопробовать вот так, но код я не тестировал
//...
CFile file(lpszPathName, CFile::modeRead);
CArchive arc(&file, CArchive::load);
//...
CString str;
arc.ReadString(str);
//...
Здравствуйте, Moloch, Вы писали:
M>Итак, исходные данные:
M>1) SDI-приложение;
M>2) Базовый класс CView;
M>3) Произвольный текстовой файл.
M>Задача:
M>Организовать чтение файла в CStringArray.
M>Почему именно туда? Потому что потом придется ковырять каждую строчку с целью добавления HTML-тегов. Построчно получится быстрее.
M>Так вот, проблема состоит в чтении строк файла в переменную CString для последующего занесения каждой строки в CStringArray[i].
M>Для начала я читаю файл:
M>M>BOOL CtextprobeDoc::OnOpenDocument(LPCTSTR lpszPathName)
M>{
M> if (!CDocument::OnOpenDocument(lpszPathName))
M> return FALSE;
M> // TODO: Add your specialized creation code here
M> CFile file(lpszPathName, CFile::modeRead);
M> ...
M>
M>Далее — узнаем размер файла:
M>M> m_FileSize = file.GetLength();
M>
M>Потом надо будет создавать массив:
M>M> ...
M> m_FileContent[i].Add(m_String); //где m_String - это очередная строчка, прочитанная из файла,
M> //а m_FileContent - переменная типа CStringArray.
M> ...
M>
M>А вот как прочитать файл построчно — непонятно. Облазил весь форум, но ничего путного не нашел.
M>Понятно, что можно было бы воспользоваться CEditView, но редактировать текст не надо — только вывести на экран.
CStdioFile