关于不读取相同消息的有关问题,小弟我是菜鸟,请高手们帮帮忙

关于不读取相同消息的问题,我是初学者,请高手们帮帮忙!
我在函数ReadOrderRecord中读取一个.DBD文件,文件内容很简单,如下:
000001000100                     J041118AB4398     1         O
000002000100                     J041118AB4398     1         O
000003000100                     J041216BB4300     1         O
000001000100                     J041118AB4398     1         O
000002000100                     J041118AB4398     1         O
000003000100                     J041118AS4398     1         O
000004000100                     J041118BB4302     1         O
000005000100                     J041118BS4302     1         O
000006000100                     J041216BS4300     1         O
000007000100                     J041216BB4300     1         O
其中,前六行是两两重复的,我想在读取时遇到重复的就不读,遇到不重复的继续读,不知道应该在源程序中怎么修改,源代码如下:
BOOL   CMTIClient::ReadOrderRecord(QueryOrderRequestPacket   **ppRequest,   int   &iCount)
{
CString   strFileName;
strFileName.Format( "%s.DRD ",   m_strTraderID);
CStdioFile   fRecord;
if(   fRecord.Open(strFileName,
CFile::modeNoTruncate
|   CFile::modeRead
|   CFile::typeText
|   CFile::shareExclusive)==0   )
{
//AfxMessageBox( "打开文件失败 ");
return   FALSE;
}

vector <QueryOrderRequestPacket>   vOrderRequest;
CString   strBuff;
while   ( fRecord.ReadString(strBuff)   )
{
QueryOrderRequestPacket   order;
memset(&order,   0,   sizeof(QueryOrderRequestPacket));

strcpy(order.szTraderID_,   m_strTraderID);

int   iOffset   =   0;
strcpy(order.szOrderNo,   strBuff.Mid(iOffset,   SIZE_RECORD_ORDERNO));
iOffset   +=   SIZE_RECORD_ORDERNO;

strcpy(order.szCustomerID_,   strBuff.Mid(iOffset,   TRADER_ID_LEN));
iOffset   +=   TRADER_ID_LEN;

strcpy(order.szMarket,   strBuff.Mid(iOffset,   SIZE_RECORD_MARKETID));
iOffset   +=   SIZE_RECORD_MARKETID;

strcpy(order.szCommodityID,   strBuff.Mid(iOffset,   SIZE_RECORD_COMMODITYID));
iOffset   +=   SIZE_RECORD_COMMODITYID;

order.cBuySell   =   strBuff.GetAt(iOffset);
iOffset   +=   SIZE_RECORD_BUYSELL;

vOrderRequest.push_back(order);
}
fRecord.Close();

iCount   =   vOrderRequest.size();
*ppRequest   =   new   QueryOrderRequestPacket[iCount];
for   (int   i=0;   i <iCount;   i++)
{
memcpy(*ppRequest+i,   &vOrderRequest.at(i),   sizeof(QueryOrderRequestPacket));
}

TRACE1( "读到%d条记录\n ",iCount);

return   TRUE;
}
请高手教教我,详细点儿啊,我是新手!!



------解决方案--------------------