'split'에 해당되는 글 1건

  1. 2014.10.23 mfc split 사용하기

mfc split 사용하기

Program/MFC 2014. 10. 23. 10:11

가끔 프로그램을 하다가 보면 문자열 나눌일이 있다.

Java 나 C# 같은 경우 split 라는 메소드가 있다.

사용하기 짱 편하다

MFC 에는 그런 기능이 없다

그래서 그냥 내가 만들어 쓰기로 했다;;;;


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
int splitString(CString str, CString var, CStringArray &strs)
{
    int count = 0;
 
    CString tempStr = str;
 
    int length = str.GetLength();
 
    while(length)
    {
        int find = tempStr.Find(var);
        if(find != -1)
        {
            CString temp  = tempStr.Left(find);
            int varLen = _tcslen(var);
            tempStr = tempStr.Mid(find + varLen);
            count++;
        }
        else
        {
            strs.Add(tempStr);
            length = 0;
        }
    }
    return count;
}

실행 소스 

1
2
3
4
5
6
7
8
9
10
11
12
13
CString temp = _T("test,,test1,,test2");
 
CStringArray str;
 
int count = splitString(temp, _T(",,"), str);
 
if(count)
{
    for(int i = 0 ; i <  count  ; i++)
    {
        ::AfxMessageBox(str.GetAt(i));
    }
}

위 방법대로 실행 시키면 CStringArray 로 추출이 된다.

개인적으로 메모리 선언하고 해제하고 하는 방식은 싫어해서 그냥 MS 에서 제공하는 것으로 사용을 한다.

참고사항 : Visual Studio 2008 C++ 버전으로 만들어 놓은것


Posted by PARK37
,