读取文本文件(-)

void CTestDlg::OnReadinfo()

{  

CFile filewrite1("testwrite1.txt",CFile::modeCreate | CFile::modeWrite);  

CFile filewrite2("testwrite2.txt",CFile::modeCreate | CFile::modeWrite);

 FILE* pFile = fopen("test.dat","rb");

 if(pFile)  {

  //排名 日期 代码 名称 单位净值 累计净值 增长值 增长率% 购买 赎回     

 CString str, strCode, strName,strAdd,strAllAdd,strAddValue,strAddRate;  

 char buffer[1024];   char buf[7];   

CString strInfo ="华夏希望债券A";   

while(fgets(buffer, sizeof(buffer), pFile))  

 {    str = buffer;  

  if (!str.IsEmpty())   

 {     

int pos = str.Find((LPCTSTR)strInfo);     //找到:所在位置   

  if (pos != -1)    

 {      strCode = str.Mid(pos-7,6);   

   strCode += "  ";    

  strName = strInfo;//得到:前的所有字符      

strName += "  ";    

  strAdd = str.Mid(pos+strInfo.GetLength() +1,6);  //得到:后的所有字符且不包括:     

 strAdd += "  ";      

strAllAdd = str.Mid(pos+strInfo.GetLength()+8,6);      

strAllAdd += "  ";

     strAddValue = str.Mid(pos+strInfo.GetLength()+15,1);   

   if (strAddValue == "-")   //增长值为负值      

{       strAddValue = str.Mid(pos+strInfo.GetLength()+15,7);   //读取七位       strAddRate = str.Mid(pos+strInfo.GetLength()+23,1);    

   if (strAddRate == "-")   //增长率为负值     

  {        

strAddRate = str.Mid(pos+strInfo.GetLength()+23,7);//读取七位        

strAddValue += "  ";       }   

    else  

     {        

strAddRate = str.Mid(pos+strInfo.GetLength()+23,6);//读取六位      

  strAddValue += "  ";   

    }      }     

 else  //增长值为正值  

    {        strAddValue = str.Mid(pos+strInfo.GetLength()+15,6);//读取六位  

        strAddRate = str.Mid(pos+strInfo.GetLength()+22,1);      

    if (strAddValue == "-")//增长值为正值     

  {            

   strAddRate = str.Mid(pos+strInfo.GetLength()+22,7);//读取七位

          strAddValue += "  ";      

 }     

  else  

     {        

strAddRate = str.Mid(pos+strInfo.GetLength()+22,6);//读取七位

          strAddValue += "  ";

      }      }   

   CString s = strCode+strName+strAdd+strAllAdd+strAddValue+strAddRate;     

 m_Info.SetWindowText((LPCTSTR)s);        

   filewrite1.Write(strCode, strCode.GetLength());   

   filewrite1.Write(strName, strName.GetLength());  

    filewrite1.Write(strAdd, strAdd.GetLength());  

    filewrite1.Write(strAllAdd, strAllAdd.GetLength());     

 filewrite1.Write(strAddValue, strAddValue.GetLength());  

    filewrite1.Write(strAddRate, strAddRate.GetLength());       }     }   }    }

  fclose(pFile); 

filewrite1.close(); }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值