Помогите написать парсер для текстового документа!!!
Нужно написать парсер, который открывает текстовый файл, считывает побайтно содержимое и если в тесте попадается знак $ переводит на новую строку т.е.
____________
привет$$089Пока //Исходная строка
привет //Должны получить
$$089Пока
____________
void CParserDlg::OnBnClickedButton1()
{
// TODO: Add your control notification handler code here
CFileDialog dlg(TRUE,"txt", "*.txt");
if (dlg.DoModal()==IDOK)
{
CFile myFile;
VERIFY(myFile.Open(dlg.GetPathName(), CFile::modeReadWrite));
char buffer[1024]={0}; //буфер куда читаем
}
}
int counter=0; //счетчик для побайтового смещения при поиске
//строки откуда начинать читать значения
myFile.Seek(0,CFile::begin); //стали в начало файла
do //Ищем откуда начать чтение данных
{
try
{
myFile.Seek(counter++,CFile::begin); //Пробуем переместиться в файле
}
catch (...)
{
//не получилось переместиться - ругаемся
myFile.Close();
MessageBox("Стартовая строка не найдена");
return;
}
//чистим буфер для чтения из файла
memset(buffer,0,sizeof(buffer));
if (myFile.Read(buffer,strlen(0))==0)
{//если ничего не смогли прочитать
myFile.Close();
MessageBox("Файл битый");
return; //уходим
}
}
___________________________
Я пока начинающий! Подскажите если кто знает пожалуйста!
|