2015-03-31 2 views
0

Как найти indexof в GetWindowsText?Найти Indexof в MFC C++

Я просто хочу, чтобы получить расширения из box->fileExt->GetWindowsText(save);
Например мой вход .exe .txt .bmp

Так что я хочу, чтобы получить их по отдельности. Например, что-то вроде этого:

.exe 
.txt 
.bmp 

В настоящее время мой код это:

for (int i = 0; i < files; i++) 
     { 
      box->testBox1.AddString(save); 
      fileExtensions.Add(save)`enter code here`; 
      CString check; 
      box->fileExt.GetWindowText(check); 
      CString store = check; 
      check.Find(' ') == save; 
      break; 
      continue; 
      if (fileExtensions[fileCounter] == store) 
      { 
       box->textBox2.AddString(fileExtensions[fileCounter]); 
       fileCounter++; 
      } 


     }//end for 

Это не работает.

+0

.exe .txt .bmp это отдельные линии. –

+0

Отредактировано немного. Пожалуйста, не стесняйтесь заменить мой общий «Не работает» с тем, что точно не работает. –

ответ

1

Вам необходимо разделить строку на основе разделительного символа. Вы можете использовать Tokenize метод CString сделать:

CString sExtensions(_T(".exe .txt .bmp")); 
CString sExt; 
int nCurPos = 0; 
CString sSeparators(_T(" ;")); 
CStringArray Extensions; 

sExt = sExtensions.Tokenize(sSeparators, nCurPos); 
while (!sExt.IsEmpty()) 
{ 
    Extensions.Add(sExt); 
    sExt = sExtensions.Tokenize(sSeparators, nCurPos); 
} 
+0

Спасибо, Андрей, с помощью вашего кода. Мой код работает отлично. –

Смежные вопросы