CString 字符串拆分

拆分的基本思想就是反覆使用CString::find("");CString::left(void);CString::right()三個函數。下面是一個本人應用的實例:

CString str = "3;1.000,1.000,50.000;2.000,2.000,60.000;4.000,4.000,70.000;";

 //獲取第一個字符(數據個數)
 int length = str.Find(";");
 CString temp;
 CString lengthPointStr = str.Left(length);
 int tempInt = atoi(lengthPointStr.GetBuffer(lengthPointStr.GetLength()));

    //將各個用“;”隔開的數據放置在strPoint[]內
 CString *strPoint = new CString[tempInt];
 str = str.Right(str.GetLength()-length-1);
 for (int i=0;i<tempInt;i++)
 {
  length = str.Find(";");
  strPoint[i] = str.Left(length);
  str = str.Right(str.GetLength()-length-1);
 }

 
 //各數據內部的全部屬性值放置在strAtrr二維數組內
 CString (*strAtrr)[3] = new CString[tempInt][3];
 int j,k;
 for (j=0;j<tempInt;j++)
 {
  for(k=0;k<2;k++){
  length = strPoint[j].Find(",");
  strAtrr[j][k] = strPoint[j].Left(length);
  strPoint[j] = strPoint[j].Right(strPoint[j].GetLength()-length-1);
  }
  strAtrr[j][k]=strPoint[j];
 }

 /***************完畢*********************/
 //釋放堆內存
 delete []strPoint;
 delete  []strAtrr;

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