CSDN的第一篇

第一回在CSDN上寫東西 呵呵

畢業了 首先恭喜下自己

從昨天開始讀 領導自己創造的文件格式  昨天下午開始動工 昨天一無所獲

今天呢

從亂亂的文件格式中總結出規律  試着讀了一番 問題真多 

自己出了一身冷汗的一個函數 是 提取一個字符串中的所有以空格分割的詞,看起來有點簡單,可能真的很簡單,自己寫了個函數,讀了下,主要用了substr,其他的就是一些判斷

void PolyParse::CutBlank(vector<wstring>& wv,wstring &in)
{//剔除空格
 int n=in.length();
 wstring str;
 int off=0,cnt=0,space=0;
 BOOL flag=FALSE;
 const wchar_t *ptr1 = 0;
 ptr1= in.data();
 if(in.find(L" ")!=string::npos)
 {
  for(int i=0;i<n;i++)
  {
   off=i;
   wchar_t ch=ptr1[i];
   if(ch!=L' ')
   {
    space=0;
    cnt++;   
   }
   else //if( ptr1[i]==L' ')
   { 
    if(space==0)
    {
     str=in.substr(off-cnt,cnt);
     cnt=0;
     wv.push_back(str);
     space++;
    }
   } 

  }
  int index=in.find_last_of(L" ",in.length()-1);
  wstring temstr=in.substr(index,in.length()-index);
  wv.push_back(temstr);
 }
 else//這一行中只有一個詞
 {
  wv.push_back(in);
 }
 
}

也許會有更簡單的方法,期待有人能夠指出

 

此方法解決後

又遇到一個很愚蠢的問題 在判斷語句if(flag=0)少寫了個=號 導致BUG  粗心 粗心

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章