Search

'스트링'에 해당되는 글 1건

  1. 2017.10.19 CString Tokenize

CString Tokenize

Programming/C,CPP,CS 2017. 10. 19. 10:25 Posted by TanSanC
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

CString Tokenize



문자열을 어떠한 구분자에 의해 나누고 싶을 때

 예를 들어, "6000,A2301BA81301,Sensor1" -> "6000" / "A2301BA81301" / "Sensor1"


1. Tokenize 이용 (.net 함수..6.0에서는 사용을 못 한다.)


CString strFullText = _T("6000,A2301BA81301,Sensor1");

 CString token;

 CString strPortNumber, strName, strSensor;

 int pos = 0;

 int index = 0;


while ((token  = strFullText.Tokenize(_T(","), pos)) != _T(""))

 {

     // 6000

     if(index == 0)

     {

         strPortNumber = token;

         index++;

     }

     // A2301BA81301

     else if(index == 1)

     {

         strName = token;

         index++;

     }

     // Sensor1

     else if(index == 2)

     {

         strSensor = token;

         index++;

     }

 }


2. AfxExtractSubString 이용


CString strFullText = _T("6000,A2301BA81301,Sensor1");

 CString token;

 CString strPortNumber, strName, strSensor;


for( int k=0; k<3; k++ )

 {

     AfxExtractSubString(token, strFullText, k, ',');

     // Port에 정보 넣어준다.

     // 6000

     if(k == 0)

         strPortNumber = token;

     // A2301BA81301

     else if(k == 1)

         strName = token;

     // Sensor1

     else if(k == 2)

         strSensor = token;

 }




출처: http://endlessthirst.tistory.com/418 [세상살이]