打开txt

void CUSBExampleDlg::OnBnClickedButtonVimLoad()
{
    // TODO: Add your control notification handler code here   
    // 设置过滤器   
    TCHAR szFilter[] = _T("升级文件(*.txt)|*.txt|所有文件(*.*)|*.*||");   
    // 构造打开文件对话框   
    CFileDialog fileDlg(TRUE, _T("txt"), NULL, 0, szFilter, this);   
    CString strFilePath;   
    
    // 显示打开文件对话框   
    if (IDOK == fileDlg.DoModal())   
    {
      strFilePath = fileDlg.GetPathName();   
      SetDlgItemText(IDC_STATIC_loadfile,strFilePath);
      char *p = new char[MAX_PATH];
      p = strFilePath.GetBuffer(strFilePath.GetLength());

      MAX_VIM_DATA_PION = 600;
      int ret = 0;

      MOTO_VIM_WRITE_FILE(p,MAX_VIM_DATA_PION,1);
      if(ret == 1)
      {
        printf("\r\n transmission OK",ret);
      }
    }
}

 

int MOTO_VIM_WRITE_FILE(char* fileName, int nDataNum, int clockCycle)
{
    CFile mFile;
    unsigned short int i,j;
    int ret = -1;
    unsigned int CRC_DATA;
    CString strFilePath;  
    unsigned short int data_temp,vim_date_num;
    strcpy(strFilePath.GetBuffer(100),fileName);
    printf("%s\r\n",strFilePath);
    mFile.Open( strFilePath, CFile::modeRead);
    unsigned long long my_file_len = mFile.GetLength();
    TCHAR szError[4096];
    mFile.Read(szError,my_file_len);//my_file_len);
    
    printf("file_len:%d\r\n",my_file_len);
    vim_date_num = 0;
    for( i = 0;i<my_file_len;i++)
    {
        data_temp = 0;
        for(j = 0;j<5;j++)
        {
            if(((szError[i+j] !=' ' )||(szError[i+j] !=0x09 ))&&(szError[i+j] >='0' )&&(szError[i+j] <='9' ))
            {
                data_temp =data_temp*10 + szError[i+j]-'0';
                VIM_DATA[vim_date_num] = data_temp;
            }
            else if((szError[i+j] == ' ')||(szError[i+j] =0x09 ))
            {    
                 //printf("data_temp = %d\r\n",data_temp);
                vim_date_num++;
                break;
            }
            else if(vim_date_num == nDataNum-1)
            {
                vim_date_num++;
                break;
            }
        }
        i = i+j;
    }
    
    printf("\r\ntotle=%d\r\n 解析到的数据:\n",vim_date_num);
    for(i = 0;i<vim_date_num;i++)
    {
        printf("%d ",VIM_DATA[i]);
        if(!((i+1)%20))
            printf("\n");
    }
    printf("\r\nend-------------------->>>>>>>>");  
    mFile.Close();
    return ret;
}

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值